gpt4 book ai didi

android - using 和有什么不一样?和@作为样式限定符?

转载 作者:行者123 更新时间:2023-11-30 02:14:59 24 4
gpt4 key购买 nike

样式属性有一个单独的 ?-qualifier 的目的是什么?为什么不使用 @-qualifier ?

    <Button
style="?android:attr/buttonBarButtonStyle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@android:drawable/ic_media_play" />

最佳答案

样式属性资源允许您引用当前应用的主题中的属性值。引用样式属性允许您自定义 UI 元素的外观,方法是将它们设置样式以匹配当前主题提供的标准变体,而不是提供硬编码值。引用样式属性本质上是说,“在当前主题中使用此属性定义的样式。”

要引用样式属性,名称语法几乎与普通资源格式相同,但使用问号 (?) 代替 at 符号 (@),并且资源类型部分是可选的。例如:

例如,下面是如何引用属性来设置文本颜色以匹配系统主题的“主要”文本颜色:

<EditText id="text"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:textColor="?android:textColorSecondary"
android:text="@string/hello_world" />

这里,android:textColor 属性指定了当前主题中样式属性的名称。 Android 现在使用应用于 android:textColorSecondary 样式属性的值作为此小部件中 android:textColor 的值。因为系统资源工具知道在此上下文中需要属性资源,所以您不需要显式声明类型(应该是 ?android:attr/textColorSecondary)——您可以排除 attr 类型。

Source: HERE

关于android - using 和有什么不一样?和@作为样式限定符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29511420/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com