Во-первых, мой код для настройки actionBar. (Использование системы по умолчанию ActionBar, андроид 4.2+)ToggleButtons как пользовательское представление actionBar ведет себя странно.
@Override
public boolean onCreateOptionsMenu(Menu menu){
getMenuInflater().inflate(R.menu.listing_group, menu);
MenuItem listItem = menu.findItem(R.id.action_list);
ToggleButton customActionIcon = (ToggleButton) getLayoutInflater().inflate(R.layout.custom_action_bar_icon_view, null);
listItem.setActionView(customActionIcon);
customActionIcon.setTextOff("LIST");
customActionIcon.setTextOn("LIST");
customActionIcon.setTypeface(OswaldRegular());
customActionIcon= (ToggleButton)getLayoutInflater().inflate(R.layout.custom_action_bar_icon_view, null);
customActionIcon.setTextOff("MAP");
customActionIcon.setTextOn("MAP");
customActionIcon.setTypeface(OswaldRegular());
MenuItem mapItem = menu.findItem(R.id.action_map);
mapItem.setActionView(customActionIcon);
return super.onCreateOptionsMenu(menu);
}
Layout XML для меню:
<menu xmlns:android="http://schemas.android.com/apk/res/android" >
<item
android:id="@+id/action_list"
android:showAsAction="always"
/>
<item
android:id="@+id/action_map"
android:showAsAction="always"/>
</menu>
Layout XML для кнопки пользовательских ActionBar:
<?xml version="1.0" encoding="utf-8"?>
<ToggleButton xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/action_bar_toggle_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="12sp"
android:background="@color/transparent"
android:textColor="@drawable/listing_group_activity_actionbar_text_color_selector">
</ToggleButton>
Проблема:
Когда экран с этой панелью действия сначала загружается s, обе кнопки отображаются в выделенном цвете, но оба они отображают текст по умолчанию «Выкл.». Когда я нажимаю один из них, они правильно меняют цвет И меняют текст на тот, который я установил в onCreateOptionsMenu(). то есть становится LIST, а один становится MAP. И тогда они продолжают оставаться таким образом и функционируют как обычные ToggleButtons. Я бы хотел, чтобы они начали с правильного отображения текста, и после этого исправлено. Я хочу, чтобы один из них был выбран по умолчанию.
Любая помощь по этому вопросу очень ценится! Благодаря!