Я немного смущен тем, что является идеологически правильным способом использования фрагментов.Я использую фрагменты правильно?
Как утверждает Android-разработчиков,
Отрывок представляет собой поведение или часть пользовательского интерфейса в качестве активность. Вы можете объединить несколько фрагментов в одном действии с , создать многоуровневый пользовательский интерфейс и повторно использовать фрагмент в нескольких действиях. Вы можете считать фрагмент как модульный раздел активности, который имеет свой собственный жизненный цикл, получает свои собственные входные события и которые вы можете добавить или удалить во время выполнения активности (вроде как «вспомогательная» «что вы можете повторно использовать в разных действиях).
А также:
Фрагменты разлагаются функциональность приложений и пользовательского интерфейса в многоразовые модулей Добавление нескольких фрагментов на экране, чтобы избежать переключения деятельности
И мое использование фрагментов идет следующее путь: У меня есть только одна основная деятельность и целая куча фрагментов. Вместо запуска я предпочитаю заменять фрагменты. Например, у меня есть FeedsFragment
, FriendsFragment
, MessagesFragment
, и когда я выбираю что-то из скользящего меню, мой Activity
просто заменяет основной Fragment
. Если я запустил фрагмент из другого фрагмента, я поставил предыдущий в backstack.
Некоторые фрагменты требуют активность, чтобы изменить ActionBar, двутавровой сделать это непосредственно
((MainActivity)getActivity()).setupActionBar();
В настоящее время у меня нет никакого кода, который поддерживает макеты таблеток (как показано в примерах на андроид разработчиков), но Я планирую добавить его.
Итак, это правильный способ сделать что-то? Или я совсем чего-то не хватает?
вы можете Acces ActionBar внутри фрагмента, например: 'ActionBar аб = getActivity() getActionBar()' имеет смысл держать внутри кода фрагмента, который изменяет ActionBar для этого частности. фрагмент. Кроме того, если вы хотите получить доступ к родительской активности изнутри фрагмента, вам следует следовать рекомендациям Google и использовать для этого интерфейс. здесь объясняется довольно неплохо: http://developer.android.com/training/basics/fragments/communicating.html – pelotasplus