Изменение ориентации очищает TimePicker - PullRequest
1 голос
/ 18 марта 2012

Я только начал изучать разработку приложений для Android и заметил следующую проблему, пробуя различные элементы деятельности. У меня есть следующий код в моей основной деятельности

<TableLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/mainLayout"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent" >

    <TableRow
        android:id="@+id/row1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" >

        <TimePicker
            android:id="@+id/timePicker1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content" />

    </TableRow>

</TableLayout>

Это активность только с TimePicker. Моя проблема заключается в том, что всякий раз, когда я меняю ориентацию своего мобильного устройства, выбор часов TimePicker становится пустым, и в LogCat генерируется следующая ошибка.

Saved cursor position 2/2 out of range for (restored) text

1 Ответ

2 голосов
/ 18 марта 2012

По умолчанию Android перезапускает вашу активность при изменении ориентации экрана или любых изменений конфигурации. Вам нужно будет указать (в вашем AndroidManifest.xml), что вы не хотите обрабатывать изменения конфигурации самостоятельно. Затем в своей деятельности переопределите метод onConfigurationChanged().

Более подробную информацию можно найти здесь: http://developer.android.com/guide/topics/resources/runtime-changes.html#HandlingTheChange

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...