Intereting Posts
Как создать плагин в phonegap для запуска приложения в фоновом режиме? Как добавить подключение к приложениям в Phonebook / Contacts, как Whatsapp и Viber? Что особенного в android: inputType = "textPersonName" для EditText Календарное событие сохраняется локально на телефоне, но не может синхронизироваться с Календарем Google. Сохранить растровое изображение в Android в формате JPEG во внешнем хранилище в папке Smart App Баннеры; Windows Store приложение HTML-метатег эквивалент для Android / Google Play? Конфликтующие сообщения lint относительно использования paddingStart Мобильная разработка – родной VS Cross Platform VS JavaScript Изменение стиля изображения Android для имитации нажатия кнопки В приложении Billing v3 IllegalArgumentException с использованием IabHelper Использование SQLite из активности и обслуживания SwitchCompat рисует дополнительные строки Как преобразовать приложение java swing для работы на Android Условное включение / исключение ресурсов для сборки Android apk Экспортировать Контакты как файл VCF

Настроить панель инструментов как панель действий в фрагменте

Я хочу настроить панель инструментов как панель действий, но поскольку ваша панель инструментов является макетом, она должна быть в вашем макете. Теперь мой макет находится в моем фрагменте.

Я добавил панель инструментов в свой макет, и я называю это в своем фрагменте:

//Toolbar Toolbar toolbar = (Toolbar) getActivity().findViewById(R.id.toolbar); 

Это работает, потому что я могу установить заголовок и так далее, но теперь я хочу, чтобы он реагировал как панель действий, потому что я хочу иметь это на самом деле. setDisplayHomeAsUpEnabled (правда)

Для этого я должен изменить панель инструментов на панель действий:

 setSupportActionBar(toolbar); 

Это не работает в моем фрагменте …

Может кто-нибудь помочь мне, чтобы моя панель инструментов работала как панель действий в фрагменте.

Solutions Collecting From Web of "Настроить панель инструментов как панель действий в фрагменте"

Теперь ActionBarActivity устарел, поэтому вам нужно getActivity() свою деятельность из getActivity() в AppCompatActivity . Вот пример:

 ((AppCompatActivity) getActivity()).getSupportActionBar().setSubtitle(); 

Причина, по которой вы должны его использовать, заключается в том, что getActivity() возвращает FragmentActivity и вам нужна AppCompatActivity

пытаться:

  ((AppCompatActivity)getActivity()).setSupportActionBar(toolbar); 

ActionBar – свойство Activity. Если вы хотите установить панель инструментов из данного фрагмента в качестве ActionBar объекта Owning Activity, затем получите Activity, которому принадлежит фрагмент ( Fragment.getActivity() ), и установите его свойство ActionBar.

Затем juse использует тот же метод setDisplayHomeAsUpEnabled, о котором вы говорили, чтобы начать с ActionBar после установки вашей панели инструментов в качестве ActionBar, чтобы получить кнопку «назад / вверх».

Очевидно, вам придется тщательно об этом позаботиться, если в вашем приложении есть несколько фрагментов.

использование

 ((ActionBarActivity) getActivity()).getSupportActionBar().setSubtitle("Your Title");