Просмотр не использует автоматически сгенерированную информацию Bundle.
Поиск переполнения стека не дал результатов по этому поводу.Вид не настраивается, имеет уникальный идентификатор.Не дублируется ли:
findViewById не работает для включения?
FindViewById () не находит View
Android: findviewbyid: поиск представления по идентификатору, когда представление не в том же макете, вызванном setContentView
Другие представления работают должным образом.Единственное, что не добавлено как добавление, это единственное отличие, которое я смог найти.
Описание проблемы: Вид скрыт, Активность воссоздана, Вид показан.
Подробности: У меня есть кнопка, которая использует атрибут android:onClick
по умолчанию, который вызывает метод.Этот метод работает, как и ожидалось.Затем я «переворачиваю» Android-устройство, ориентация которого меняется, в результате чего он вызывает onSaveInstanceState(Bundle b)
.Информация об Деятельности связывается, Активность уничтожается и воссоздается, затем сохраненный Пакет отправляется на onCreate(Bundle b)
, как и ожидалось.
Затем, согласно Деятельности Android, Пакет восстанавливает состояния просмотра.
За исключением одного представления
class ExampleActivity extends AppCompatActivity {
public void hide(View view){
view.setVisibility(View.GONE);
}
}
XML деятельности
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
style="@style/linear_layout_style"
tools:context=".ExampleActivity">
<View style="@style/another_style" />
<include layout="@layout/included_xml" />
<View style="@style/another_style" />
</LinearLayout>
Включенный XML
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
style="@style/linear_layout_style">
<!-- This was supposed to stay hidden after pressed, but it restores in a VISIBLE state -->
<Button
style="@style/the_style"
android:id="@+id/an_unique_id"
android:onClick="hide"
android:text="EXAMPLE: Hide" />
<!-- This is supposed to always be visibile, and it does -->
<Button
style="@style/the_style"
android:onClick="doOtherStuff"
android:text="Example: Always Available">
<requestFocus />
</Button>
</LinearLayout>