Когда я заметил, что большинство навигационных параметров в Actionbar становятся устаревшими, я быстро начал заменять панель действий новой панелью инструментов Android. В основном хорошо работая, я все еще сталкиваюсь с проблемами. У меня есть прядильщик на моей панели инструментов, содержимое которого исчезает при вращении.Android Spinner и панель инструментов (android.support.v7.widget.Toolbar)
Моя панель инструментов находится в планировке MainActivity, как это:
<android.support.v7.widget.Toolbar
android:id="@+id/act_main_toolbar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
>
</android.support.v7.widget.Toolbar>
В OnCreate в MainActivity я накачивания кнопки меню, логотип и кок
mToolbar.setLogo(R.drawable.action_bar_icon);
Toolbar.inflate(this, R.layout.toolbar_spinner, mToolbar);
mToolbar.inflateMenu(R.menu.toolbar_menu);
При вращении экрана в Содержимое Spinner исчезает, прядильщик все еще там просто пуст. SpinnerAdapter, содержащий элементы, все еще содержит их, так же, как адаптер отсоединен от панели инструментов.
Редактировать обновленный код для создания SpinnerAdapter:
Адаптер устанавливается в OnCreate фрагмента:
mToolbar = (Toolbar) getActivity().findViewById(R.id.act_main_toolbar);
mToolbarSpinner = (Spinner) mToolbar.findViewById(R.id.act_main_toolbar_spinner);
mToolbarSpinner.setAdapter(adapter);
Тогда у меня есть asyncTasks, которые восстановить данные после того, как поиск производится I используйте следующий вызов, чтобы представить данные:
adapter.notifyDataSetChanged()
Edit 2
Проблема возникла из-за того, что ссылка на mToolbar, созданная в onCreate, становилась неисправной после поворота экрана. Перемещая следующее onCreateView он начал работать:
mToolbar = (Toolbar) getActivity().findViewById(R.id.act_main_toolbar); //This fixed it!
mToolbarSpinner = (Spinner) mToolbar.findViewById(R.id.act_main_toolbar_spinner);
mToolbarSpinner.setAdapter(adapter);
Вы можете разместить код, в котором вы добавляете spinneradapter на панель инструментов? – JoaoBiriba
Теперь я добавил код. – user1354603