Вкладки на панели действий, которые содержат расширенное представление действий, снова появляются при повороте

В моем приложении для Android я использую ActionBarSherlock для отображения двух пунктов меню. Один из них — элемент поиска со свернутым представлением действий. Кроме того, панель действий имеет значение ActionBar.NAVIGATION_MODE_TABS и содержит три вкладки. Эти вкладки отображаются на панели действий, если на ней достаточно места, или под панелью действий в противном случае.

Моя проблема появляется на устройствах, где достаточно места для вкладок в панели:

введите здесь описание изображения

Если представление действия поиска расширено, оно отображается вместо вкладок, и это нормально:

введите здесь описание изображения

Однако, если устройство повернуто, когда представление действия поиска расширяется, вкладки снова появляются в новой ориентации и перекрывают представление действия поиска:

введите здесь описание изображения

Это происходит одинаково как на Galaxy Tab 10.1N (под управлением Android 4.0.4), так и на Galaxy Tab 7.0 Plus N (под управлением Android < em>3.2). Кто-нибудь знает, как это исправить? Я ценю любую помощь!

Вот код:

default_menu.xml

<menu xmlns:android="http://schemas.android.com/apk/res/android">    
    <item android:id="@+id/SearchMenuItem"
          android:icon="@drawable/icon_search"
          android:title="@string/Search"
          android:actionLayout="@layout/search"
          android:showAsAction="always|collapseActionView"/>
    <item android:id="@+id/SettingsMenuItem"
          android:icon="@drawable/icon_settings"
          android:title="@string/Settings"
          android:showAsAction="always" />
</menu>

search.xml

<?xml version="1.0" encoding="utf-8"?>

<EditText xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/searchEditText"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:paddingTop="10dip"
    android:paddingRight="8dip"
    android:hint="@string/Search"
    android:textColorHint="@color/white20"
    android:textColor="@color/white"
    android:textSize="14sp"
    android:textCursorDrawable="@null"
    android:drawableLeft="@drawable/icon_search_transparent"
    android:background="@drawable/edit_text_search"
    android:imeOptions="actionSearch"
    android:inputType="text"
    android:lines="1"
    android:maxLines="1"
    android:ellipsize="end" />

Вот как я добавляю вкладки:

protected void addTabBar() {
    ActionBar ab = getSupportActionBar();
    ab.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS);

    ab.addTab(ab.newTab().setText("TAB1").setTabListener(this), false);
    ab.addTab(ab.newTab().setText("TAB2").setTabListener(this), false);
    ab.addTab(ab.newTab().setText("TAB3").setTabListener(this), false);
    ab.selectTab(ab.getTabAt(0));
}

person Flo    schedule 27.02.2013    source источник
comment
Кто-то может воспроизвести это? Как вы думаете, это может быть ошибка в ActionBarSherlock или «оригинальном» ActionBar?   -  person Flo    schedule 04.03.2013


Ответы (1)


Была ошибка в панели действий Sherlock, когда происходило принудительное переполнение, теперь она была удалена. См. Историю версий здесь Журнал изменений... Пожалуйста, обновите панель действий sherlock или используйте совместимость с панелью действий

person Asthme    schedule 06.05.2014