Android选项卡小部件选择的选项卡底部有边框线



我有一个布局如下的tabhost。

https://drive.google.com/file/d/0B8nQOFcSOOboNkRFV091VVhzanc/view?usp=sharing(很抱歉,我无法作为新用户发布照片)

我需要为所选选项卡设置浅蓝色边框。如何使所选选项卡具有浅蓝色边框?

请帮帮我,谢谢。

首先,您需要制作一个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"/>

对我来说,我只是使用了@color中已经定义的简单颜色,但这并不重要,你可以使用@drawable中的任何图片,也可以使用@color的颜色。或者在你的情况下,你应该在底部制作带有边框的9补丁。

然后你需要在你的@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>

我发现这是自定义选项卡的最佳方式,你可以为每个状态选择一种颜色或可绘制的(聚焦,点击…)

我希望这能有所帮助:)

相关内容

  • 没有找到相关文章