Я хотел бы иметь макет приложения, как тот, который они использовали для Gmail. У них есть панель действий, в которой есть значки (на моем устройстве есть логотип приложения для навигации, а также пользовательское представление для выбора приоритетных входящих / входящих / и т. Д.), Но есть также какой-то раскол ActionBar
поскольку внизу у меня есть несколько Значки (составление, поиск, ярлыки и т. Д.).
Как я могу это сделать? Я реализовал следующий ActionBar
через этот XML:
<?xml version="1.0" encoding="utf-8"?> <menu xmlns:android="http://schemas.android.com/apk/res/android" > <item android:id="@+id/menu_gps" android:icon="@drawable/icone_gps_continu" android:showAsAction="always" android:title="@string/menu_gps"/> <item android:id="@+id/menu_sort" android:icon="@drawable/icone_liste_chron" android:showAsAction="always" android:title="@string/menu_liste"/> <item android:id="@+id/menu_stats" android:icon="@drawable/icone_statistiques" android:showAsAction="always" android:title="@string/menu_stats"/> <item android:id="@+id/menu_save" android:icon="@drawable/icone_terminersortie" android:showAsAction="always" android:title="@string/menu_save"/> <item android:id="@+id/menu_search" android:icon="@drawable/ic_launcher" android:showAsAction="always" android:title="@string/menu_search"/> <item android:id="@+id/menu_photo" android:icon="@drawable/icone_enregistrerphoto" android:showAsAction="always" android:title="@string/menu_photo"> </item> <item android:id="@+id/menu_sound" android:icon="@drawable/icone_enregistrerson" android:showAsAction="always" android:title="@string/menu_sound"> </item> <item android:id="@+id/menu_settings" android:icon="@drawable/icone_parametres" android:showAsAction="always" android:title="@string/menu_settings"> </item> </menu>
И я, конечно, включил split ActionBar
, добавив android:uiOptions="splitActionBarWhenNarrow"
к тегу <application>
в манифесте.
То, что я получаю, это пустой «верхний» ActionBar
; А нижний отображает только три значка. Я думал, что могу отображать, как 3-4 иконки вверху и 5 внизу в режиме portait, и все они сверху в ландшафтном режиме.
Примечание. Даже если я тестирую ICS с помощью Galaxy Nexus, я использую ActionBarSherlock для обеспечения обратной совместимости.
Похоже, я отправил слишком быстро, похоже, это невозможно.
Дубликаты:
По-видимому, это невозможно. Однако они сделали это в gmail / gplus, возможно, используя пользовательский вид для нижней части … Все еще ожидая лучшего ответа на это!
Слово Рето Мейера об этом:
Я думаю, что проблема с расщеплением действий между верхним и нижним состоит в том, что это затруднит выполнение действий. Действия должны быть самыми важными для деятельности – разделение их между верхней и нижней частью экрана означает, что пользователям нужно искать в двух местах, а не в одном.
Мне также было интересно, как эти приложения имели значки в обоих барах, поэтому я декомпилировал два из них.
Я обнаружил, что эти два приложения вообще не реализовали ActionBar
и не использовали пользовательские макеты для обоих баров. Я не уверен, могу ли я назвать эти приложения здесь, но они являются известными приложениями с загрузкой 10M +.
Я настоятельно рекомендую идти одинаково, если вам не нравится ActionBar
по умолчанию (у которого очень мало места для настройки) и вместо этого создаются собственные макеты (не обязательно для обеих баров, это зависит от ваших потребностей).
Размножать разметку панели действий довольно легко. Его высота всегда 48dp
независимо от устройства, поэтому простой LinearLayout
или RelativeLayout
с фиксированной высотой и некоторыми прозрачными кнопками изображения работают очень хорошо. Всего за 15 минут вы получаете полностью настраиваемую панель действий split.