Вкладки на главной секции ActionBar

Как я могу архивировать табуляцию в Android? Навигация по вкладкам является частью этого основного ActionBar и не ниже. PS: Я использую ActionBar Sherlock

На данный момент это просто:

actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS); 

Текущий ActionBar

Но я хочу выглядеть так:

ActionBar Design

Спасибо за помощь, Kitesurfer

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

Я не рекомендую это делать, но вы можете переопределить стили ActionBar и ABS:

 <bool name="abs__action_bar_embed_tabs">false</bool> //for ActionBarSherlock <bool name="action_bar_embed_tabs">false</bool> //for default ActionBar 

Из этой темы. По теме переопределения функциональности вкладки «Панель действий».

Джейк Уортон

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

Я склонен согласиться о борьбе с платформой. Вместо этого я решил отказаться от навигации на вкладке запасов (как с платформы Android, так и с библиотеки ABS) и вместо этого написал макет, который выглядит в основном так же, как и вкладки, и использовал его как пользовательское представление, применяя его с помощью ActionBar.setCustomView(View) И ActionBar.setDisplayShowCustomEnabled(true) .

Это использует ActionBar api стандартным способом (т. LinearLayout Не сражается с платформой), и, как указано в этом потоке, представление табуляции – это просто LinearLayout .

Попробуйте это . Это реализует метод, который позволит вам выбрать, хотите ли вы использовать вкладки в отдельной строке или в верхней строке, независимо от ориентации экрана.

Для тех, кто использует этот код с родным ActionBar, просто опустите if (actionBar instanceof ActionBarWrapper) и блок под ним.

Имейте в виду, однако, что это что-то вроде взлома и может сломаться в будущих версиях Android.