我发现在一些演示代码中有两种情况,有什么区别?android:attr / textAppearanceMedium和?android:textAppearanceMedium?谢谢!
案例1
<resources>
<style name="myTextAppearance">
<item name="android:textAppearance">?android:attr/textAppearanceMedium</item>
</style>
案例2
<resources>
<style name="myTextAppearance">
<item name="android:textAppearance">?android:textAppearanceMedium</item>
</style>
</resources>
答案 0 :(得分:11)
根据Android Developer API Guide - Accessing Resources - Referencing style attributes,如果系统资源工具可以找出正确的资源类型,则资源类型是可选的。所以他们指的是相同的价值。
答案 1 :(得分:4)
我认为它们都是一样的,即引用主题属性。
DOCS说...
Must be a reference to another resource, in the form "@[+][package:]type:name" or to a theme attribute in the form "?[package:][type:]name".
[type:]
是可选的。
以下链接中的更多解释......
答案 2 :(得分:1)
两者之间没有任何区别
?android:attr/textAppearanceMedium
和?android:textAppearanceMedium
。
您可以根据需要使用它们中的每一个。