我在查看ICS的Android Dev Design网站时发现所有应用程序都有这些字幕/部分标题:
我想知道是否有人知道如何自定义样式以实现此类标签。我在Android SDK中找不到任何类似于此的标签视图,但我非常喜欢这种外观。
谢谢您提前的帮助!
我在查看ICS的Android Dev Design网站时发现所有应用程序都有这些字幕/部分标题:
我想知道是否有人知道如何自定义样式以实现此类标签。我在Android SDK中找不到任何类似于此的标签视图,但我非常喜欢这种外观。
谢谢您提前的帮助!
所以这就是我最终使用的:
<?xml version="1.0" encoding="utf-8"?>
<resources xmlns:android="http://schemas.android.com/apk/res/android">
<style name="sectionHeader" parent="android:Widget.Holo.Light.TextView">
<item name="android:drawableBottom">@drawable/section_header</item>
<item name="android:drawablePadding">4dp</item>
<item name="android:layout_marginTop">8dp</item>
<item name="android:paddingLeft">4dp</item>
<item name="android:textAllCaps">true</item>
<item name="android:textColor">@color/emphasis</item>
<item name="android:textSize">14sp</item>
</style>
</resources>
@drawable/section_header是什么:
<?xml version="1.0" encoding="utf-8"?>
<shape
xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<size android:width="1000dp" android:height="2dp" />
<solid
android:color="@color/emphasis"/>
</shape>
还有@color的:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<color name="emphasis">#31b6e7</color>
<color name="bg_gray">#cecbce</color>
</resources>
Brandon是正确的;目前你需要自定义工作才能获得蓝色样式,这有点令人沮丧,因为它在新的设计指南中随处可见。
不幸的是,你不能将Widget.Holo.Light.TextView.ListSeparator
作为自定义样式的父级进行引用,因为它是私有的。
但是如果您只对灰线感兴趣,可以直接使用Android原始样式:
style="?android:attr/listSeparatorTextViewStyle"
这至少能将你带到灰色线条的全大写风格:
Brandon的解答可以让你实现自定义蓝色风格。
如果你想要严格从当前(v15)Android List分隔符样式进行子类化,则可以复制Android中用于Widget.TextView.ListSeparator
和Widget.Holo.Light.TextView.ListSeparator
的组合样式,并将其复制到一个新样式中:
<item name="android:background">@drawable/list_section_divider_holo_light</item>
<item name="android:textAllCaps">true</item>
<item name="android:layout_width">match_parent</item>
<item name="android:layout_height">wrap_content</item>
<item name="android:textStyle">bold</item>
<item name="android:textColor">?android:textColorSecondary</item>
<item name="android:textSize">14sp</item>
<item name="android:gravity">center_vertical</item>
<item name="android:paddingLeft">8dip</item>
您需要将可绘制对象复制到自己的目录中,因为它们是私有的。
我不确定是哪种样式,但首选项应用程序也使用了类似的样式。它是一个部分标题。此外,TextField 的 textAllCaps
设置为 true。如果您寻找 textAllCaps,可以在 SDK 的资源文件夹中找到它 :)
我建议使用一个高度设置为1dp的View来画线,您可以使用background属性来设置颜色。