【问题标题】:Android Inherit style from different layout sizeAndroid 从不同的布局大小继承样式
【发布时间】:2011-08-03 22:07:37
【问题描述】:

是否可以从不同的布局尺寸继承 android 样式?

例如,如果我在我的“值”目录(即 /res/values/style.xml)中定义了一个名为 MyLabel 的样式,是否可以从不同值目录中的该标签继承? (即/res/values-large-mdpi/style.xml)

我要做的是设置一堆样式来控制我的应用程序的布局,但会根据布局大小和屏幕密度更改字体大小。我想将大部分样式放在一个文件中,然后将字体大小放在其他样式文件中。

【问题讨论】:

    标签: android android-layout styles android-styles


    【解决方案1】:

    您必须在两个单独的文件中执行此操作。如果您在 values 和 values-large-mdpi 中有 style.xml,如果适用,系统将自动使用 largi-mdpi 中的一个并关闭另一个。

    如果您有另一个类似 /res/values/styles-common.xml 且在 values-large-mdpi 中没有对应项的文件,系统将使用该文件。

    因此,在公共文件中定义所有常用样式,并从您的专用样式中引用它们。

    【讨论】:

    • 我创建了 /res/values/style-common.xml,其中包含一个名为“MyStyle”的样式,其中包含高度、宽度和文本。然后我创建了覆盖文本属性的 /res/values-xlarge/style.xml 。当我启动一个 xlarge 模拟器时,Activity 崩溃,因为 MyStyle 没有高度或宽度属性,这意味着它没有从 style-common.xml 继承。
    • 您是否将parent 设置为共同点?您需要有两种不同的样式,一种在公共文件中,一种在专用文件中,并将父级设置为公共文件中的一种。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-11-07
    • 2015-02-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-01-27
    • 1970-01-01
    相关资源
    最近更新 更多