¿Cuál es la diferencia entre "? Android:" y "@android:" en un archivo xml de diseño de Android? Parecen ser formas intercambiables de reutilizar los recursos del SDK de Android.¿Cuál es la diferencia entre "? Android:" y "@android:" en un archivo xml de diseño de Android?
La única diferencia que descubrí se ilustra con el siguiente ejemplo.
Aquí borde derecho de la Vista de Texto se representa alineado con el borde izquierdo de la ImageButton
<RelativeLayout
android:id="@id/header"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="#888888">
<TextView
android:id="@android:id/text1"
android:layout_alignParentLeft="true"
android:text="blah blah"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_toLeftOf="@android:id/button1" />
<ImageButton
android:id="@android:id/button1"
android:layout_alignParentRight="true"
style="@style/PlusButton" />
</RelativeLayout>
Aquí, sin embargo, el borde derecho de la TextView está alineado con el borde derecho de la RelativeLayout. TextView se superpone al ImageButton.
<RelativeLayout
android:id="@id/header"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="#888888">
<TextView
android:id="@android:id/text1"
android:layout_alignParentLeft="true"
android:text="blah blah"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_toLeftOf="?android:id/button1" />
<ImageButton
android:id="?android:id/button1"
android:layout_alignParentRight="true"
style="@style/PlusButton" />
</RelativeLayout>
La única diferencia entre los dos diseños es el uso de @android vs? Android. Ambos compilan sin errores.
Muchas gracias.
duplicado posible de [(?) Signo de interrogación en los atributos XML para Android] (http://stackoverflow.com/questions/2733907/question-mark-in- xml-attributes-for-android) –