在縱向模式下使用手機或平板電腦時,在ActionBar下顯示標籤,用於標識徽標和菜單項。在水平模式下的平板電腦上,它們與徽標和菜單項一起顯示。在此配置中,選定選項卡下的下劃線將丟失。水平視圖中的ActionBar選項卡樣式
什麼風格控制這個?在縱向模式下,當標籤顯示內嵌徽標和菜單時,我想使用與橫向模式不同的選定樣式。
我的主題是它的父母設置爲Theme.AppCompat.Light
。在這我有
<item name="android:actionBarTabStyle">@style/ActionBarTabStyle.Silence</item>
<item name="android:actionBarStyle">@style/ActionBar.Solid.Silence</item>
android:actionBarTabStyle
有android:background
值設置爲可繪製是
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<!-- Non focused states -->
<item android:state_focused="false" android:state_selected="false" android:state_pressed="false" android:drawable="@android:color/transparent" />
<item android:state_focused="false" android:state_selected="true" android:state_pressed="false" android:drawable="@drawable/tab_selected_silence" />
<!-- Focused states -->
<item android:state_focused="true" android:state_selected="false" android:state_pressed="false" android:drawable="@drawable/tab_unselected_focused_silence" />
<item android:state_focused="true" android:state_selected="true" android:state_pressed="false" android:drawable="@drawable/tab_selected_focused_silence" />
<!-- Pressed -->
<!-- Non focused states -->
<item android:state_focused="false" android:state_selected="false" android:state_pressed="true" android:drawable="@drawable/tab_unselected_pressed_silence" />
<item android:state_focused="false" android:state_selected="true" android:state_pressed="true" android:drawable="@drawable/tab_selected_pressed_silence" />
<!-- Focused states -->
<item android:state_focused="true" android:state_selected="false" android:state_pressed="true" android:drawable="@drawable/tab_unselected_pressed_silence" />
<item android:state_focused="true" android:state_selected="true" android:state_pressed="true" android:drawable="@drawable/tab_selected_pressed_silence" />
</selector>
我看到這些state_selected
值。被設置爲這些圖形的圖像與ActionBar背景顏色不同,所以它不僅僅是在同一個彩色背景上看不到它們。
風格actionBarStyle
包含
<item name="android:background">@drawable/ab_solid_silence</item>
<item name="android:backgroundStacked">@drawable/ab_stacked_solid_silence</item>
<item name="android:backgroundSplit">@drawable/ab_bottom_solid_silence</item>
<item name="android:progressBarStyle">@style/ProgressBar.Silence</item>
的三個第一的有圖像和progressBarStyle
包含一些風格了,但他們是不相關的。
您是否檢查了各種API級別(或您看到該行爲的版本?)? – Luksprog
@Luksprog我只有運行Android 4.1.2和4.3的設備。我如何才能爲內聯選項卡使用完全不同的圖像? – MikkoP
'actionBarTabStyle'負責該選擇器。當選項卡爲內聯時,我從未看到有消失標籤指示符的問題。 *我如何爲內聯選項卡使用完全不同的圖像?* - 系統選擇如何放置這些選項卡,橫向方向可能會將它們視爲內聯。因此,您可以使用'-land'的配置標識符並將主題更改爲所需的選擇器。我會建議反對這一點,我不知道我見過一個這樣做的應用程序,這對用戶來說是非常直觀的。 – Luksprog