Я создаю небольшой пример, чтобы показать свою проблему. Компонов с SearchView в панели инструментов и 3 кнопки: 1) Набор текста - расширить вид поиска и задать запрос 2) Развернуть - развернуть вид поиска 3) Collapse - Распад вид поискаПосле сглаживания SearchView исчезает с панели инструментов
activity_main.xml
андроид: fitsSystemWindows = "истинный">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fitsSystemWindows="true"
android:orientation="vertical"
tools:context="com.porn.MainActivity">
<android.support.design.widget.AppBarLayout
android:layout_width="368dp"
android:layout_height="wrap_content"
tools:layout_editor_absoluteX="8dp"
tools:layout_editor_absoluteY="0dp">
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:background="?attr/colorPrimary"
app:contentInsetStartWithNavigation="0dp">
</android.support.v7.widget.Toolbar>
</android.support.design.widget.AppBarLayout>
<Button
android:id="@+id/setTextBtn"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Set text" />
<Button
android:id="@+id/expandBtn"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Expand" />
<Button
android:id="@+id/collapseBtn"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Collapse" />
</LinearLayout>
</android.support.v4.widget.DrawerLayout>
MainActivity.java
Проблема возникает, когда я вызываю метод init() из onCreateOptionsMenu (в реальном приложении i init SearchView с текстом от намерения дополнительно). Если я вызову метод setToolbarSearchQuery из init и после нажатия кнопки свернуть, SearchView рухнул, и значок поиска исчезнет.
Но если я не буду вызывать метод init и вызывается тот же метод setToolbarSearchQuery с установленной текстовой кнопкой, он работает правильно (SearchView свернут и отображается значок поиска, отображаемый на панели инструментов).
Как я могу решить эту проблему? И почему значок исчезает после краха?
Я понял, что это происходит, когда я расширяю SearchView с onCreateOptionsMenu. Но как я могу исправить init SearchView от намерения дополнительно?
Скриншот как это выглядит после распада
Скриншот, как он должен выглядеть после распада