我正在尝试通过布局构建Android UI.我从以下开始:
<TextView
android:id="@+id/..."
android:layout_marginTop="8dip"
android:text="..."
style="?android:attr/listSeparatorTextViewStyle"/>
Run Code Online (Sandbox Code Playgroud)
这看起来不错(所有大写字母,较小的字体,下面的分隔栏).现在我想扩展样式,所以我将其更改为以下内容:
<TextView
android:id="@+id/..."
android:layout_marginTop="8dip"
android:text="..."
style="@style/section_title"/>
Run Code Online (Sandbox Code Playgroud)
具有以下风格:
<style name="section_title" parent="@android:attr/listSeparatorTextViewStyle">
<item name="android:layout_width">fill_parent</item>
<item name="android:layout_height">wrap_content</item>
</style>
Run Code Online (Sandbox Code Playgroud)
这不起作用(字体是正确的,但分隔线已经消失).
怎么样......那?
Luk*_*rog 23
当你使用时:
style="?android:attr/listSeparatorTextViewStyle"
Run Code Online (Sandbox Code Playgroud)
你正在使用这个属性(listSeparatorTextViewStyle)指向的样式.如果您查看平台,themes.xml您将看到实际用于此属性的样式Widget.TextView.ListSeparator.White.所以这是style您应该扩展自定义样式.
不幸的是,这种风格是私密的,你不能扩展它,或者你不应该扩展它(作为参考,请参阅谷歌的这个错误报告).您最好的选择是复制整个样式Widget.TextView.ListSeparator.White(Widget.TextView.ListSeparator不是公共的,所以也必须复制它),在您的自定义样式中使用它而不是从android平台扩展样式(请参阅此链接的响应)以上).
| 归档时间: |
|
| 查看次数: |
24415 次 |
| 最近记录: |