因此,我查看了 ICS 的Android 开发设计网站,所有应用程序都有这些字幕/部分标题:
我想知道是否有人知道自定义样式来实现看起来像这样的标签。我在 Android SDK 中找不到任何看起来像这样的标签视图,但我真的很喜欢它们的外观。
提前致谢!
因此,我查看了 ICS 的Android 开发设计网站,所有应用程序都有这些字幕/部分标题:
我想知道是否有人知道自定义样式来实现看起来像这样的标签。我在 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>
布兰登的权利;您现在需要进行自定义工作才能获得蓝色样式,这有点令人沮丧,因为它贯穿于新的设计指南中。
不幸的是,您不能将Widget.Holo.Light.TextView.ListSeparator
其作为自定义样式的父级引用,因为它是私有的。
但如果您只对灰线感兴趣,您可以使用现有的 Android 样式内联:
style="?android:attr/listSeparatorTextViewStyle"
这至少会让你进入灰线,所有大写风格:
Brandon 的回答将带您进入定制的蓝色风格。
仅供参考,如果您想从当前 (v15) 的 Android 样式中完全继承列表分隔符,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 的资源文件夹中找到它:)
我说,画线只需使用一个视图,高度设置为 tu 1dp 左右。您可以使用背景属性设置颜色