Android中的样式层次结构 – 重要性的顺序是什么?

我有一个Android应用程序,我正在与一个自定义主题应用到它在主要活动本身的Android清单工作。 此活动将创build一个listview,其中应用了该样式。

如果我为该列表视图创build一个自定义布局(包括行本身的单独xml文件),并将样式直接应用于这些布局,此样式是否会覆盖应用程序的整体样式? 我试图把握事件的层次结构,以及如何造型和主题的作品。

在我的例子中,GUESSING的工作方式是:对行应用样式,通过行布局引用xml>对整体列表视图的应用样式,由列表视图引用layout xml>从自定义主题应用样式,由android manifest引用的样式xml引用

我对吗? 或者我不正确地接近 (只是为了混淆,通过“>”我的意思是比它更重要)

Solutions Collecting From Web of "Android中的样式层次结构 – 重要性的顺序是什么?"

希望我能理解你的问题

您在styles.xml中定义的样式将始终覆盖来自android当前使用的主题的样式。

但是这只适用于你覆盖的属性。

如果你保持一个属性不变,android会为它提供样式,有时候这会让你咬人:)

这个系统最好像这样描述:一个textview需要一个属性的例子

<item name="android:textColor">#00FF00</item> 

Android将首先查看原始布局。 如果找不到,它会查看您的自定义样式。 如果没有find,它会看看android样式。

希望这可以帮助。

标准主题有像定义ListView风格的行:

  <item name="listViewStyle">@android:style/Widget.ListView</item> 

在你自己的主题,你可以做一个

  <item name="listViewStyle">@style/MyOwnListView</item> 

在ListView风格(自定义或默认)中没有定义的东西将在主题中定义,如果您已经定义了它。