Во-первых, вам нужно сделать 9 патчей PNG с линией границы внизу. Самый быстрый из известных мне способов - это: http://romannurik.github.io/AndroidAssetStudio/nine-patches.html
Затем вы должны сделать селектор xml в своей папке с возможностью переноса, например, tabs_backgrounds.xml:
<!-- Non focused states -->
<item android:drawable="@color/xlight_grey" android:state_focused="false" android:state_pressed="false" android:state_selected="false"/>
<item android:drawable="@color/white_back" android:state_focused="false" android:state_pressed="false" android:state_selected="true"/>
<!-- Focused states -->
<item android:drawable="@color/xlight_grey" android:state_focused="true" android:state_pressed="false" android:state_selected="false"/>
<item android:drawable="@color/white_back" android:state_focused="true" android:state_pressed="false" android:state_selected="true"/>
<!-- Pressed -->
<!-- Non focused states -->
<item android:drawable="@color/light_grey_color" android:state_focused="false" android:state_pressed="true" android:state_selected="false"/>
<item android:drawable="@color/light_grey_color" android:state_focused="false" android:state_pressed="true" android:state_selected="true"/>
<!-- Focused states -->
<item android:drawable="@color/xlight_grey" android:state_focused="true" android:state_pressed="true" android:state_selected="false"/>
<item android:drawable="@color/light_grey_color" android:state_focused="true" android:state_pressed="true" android:state_selected="true"/>
For me, I just used simple colors already defined in @color but that doesn't matter, you can use any picture from @drawable, or color from @color. Or in YOUR case, the 9 patch that you should make with the border on the bottom.
Затем вам нужно определить стиль вкладок в вашем @style следующим образом:
<style name="ThemeTabs" parent="@android:style/Theme.Holo.Light">
<item name="android:actionBarTabStyle">@style/ActionBarTabStyle.Myactionbar</item>
</style>
<style name="ActionBarTabStyle.Myactionbar" parent="@android:style/Widget.Holo.Light.ActionBar.TabView">
<item name="android:background">@drawable/tabs_backgrounds</item>
</style>
В свой manifest.xml вы просто добавляете эту тему для действия с вкладками. Что-то вроде этого :
<activity
....
android:theme="@style/ThemeTabs"
.... >
</activity>
Я считаю, что это лучший способ настроить вкладки, вы можете выбрать цвет или возможность рисования для каждого состояния (сфокусировано, щелкнуто ...)
Надеюсь, это поможет :)
person
Mohamed Hamdaoui
schedule
13.11.2014