title: What's the difference between "?android:" and "@android:" in an android layout xml file?
body: <p>What's the difference between "?android:" and "@android:" in an android layout xml file?  They seem to be interchangeable ways of reusing android SDK resources.  </p>
  
  <p>The only difference I discovered is illustrated by the following example.</p>
  
  <p>Here the TextView's right edge is rendered aligned with the left edge of the ImageButton</p>
  
  <pre><code> &lt;RelativeLayout
      android:id="@id/header"
      android:layout_width="match_parent"
      android:layout_height="wrap_content"
      android:background="#888888"&gt;
      &lt;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" /&gt;
      &lt;ImageButton
          android:id="@android:id/button1"
          android:layout_alignParentRight="true"
          style="@style/PlusButton" /&gt;
  &lt;/RelativeLayout&gt;
  </code></pre>
  
  <p>Here, however, the right edge of the TextView is aligned with the right edge of the RelativeLayout.  The TextView overlaps the ImageButton.</p>
  
  <pre><code>&lt;RelativeLayout
      android:id="@id/header"
      android:layout_width="match_parent"
      android:layout_height="wrap_content"
      android:background="#888888"&gt;
      &lt;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" /&gt;
      &lt;ImageButton
          android:id="?android:id/button1"
          android:layout_alignParentRight="true"
          style="@style/PlusButton" /&gt;
  &lt;/RelativeLayout&gt;
  </code></pre>
  
  <p>The only difference between the two layouts is the use of @android vs ?android.  Both compile with no errors.</p>
  
  <p>Thanks much.</p>