有什么区别?android:attr / textAppearanceMedium和?android:textAppearanceMedium?

时间:2013-06-06 04:00:44

标签: android

我发现在一些演示代码中有两种情况,有什么区别?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>

3 个答案:

答案 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:]是可选的。

以下链接中的更多解释......

need explanation for android layout syntax

References to Theme Attributes

答案 2 :(得分:1)

两者之间没有任何区别 ?android:attr/textAppearanceMedium?android:textAppearanceMedium

您可以根据需要使用它们中的每一个。