这个问题,大家都用过,不知道你们有没有想过@+id/和@id/的区别。我们来看个例子,在说明一下。
控件在layout文件当中进行定义的时候,一般会为其定义android:id属性来唯一标识这个控件。比如,对于一个文本控件TextView,我们可以为其定义android:id="@+id/textView1"。而当我们有另外一个文本控件,我们对其进行布局的时候,可以通过相对布局将其放置在前一个文本控件的右侧,例如android:layout_toRightOf="@id/textView1"。
那么我们可以看出@+id/和@id/的区别了。
- @+id
表示新增一个id,所以一般用在定义一个控件的id的时候。比如,android:id="@+id/textView1",表示新增一个叫做textView1的id,并且设置当前这个控件的id叫做textView1。 - @id
表示引用一个id,一般用来指定某一个控件。比如,当放置一个B控件位于A控件的左边的时候,可以使用android:layout_toLeftOf="@id/A",这里就是通过引用A的id来指明相对于哪个控件进行布局。