Добрый день, у меня небольшая проблема с относительными макетами, и я не знаю почему. Обычно, когда вы пытаетесь позиционировать по отношению к другим представлениям, вы используете "@id" , но, похоже, он вообще не позиционируется. только когда я использую значение "@+ id", это будет правильно. в приведенном ниже примере у меня есть 4 вида в горизонтальной ориентации. Я хочу, чтобы TextView с "percent_id" располагался между изображениями, но ближе к последнему.
<RelativeLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal" >
<TextView
android:id="@+id/sales_id"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_marginLeft="10dp"
android:text="£0.00"
android:textAppearance="?android:attr/textAppearanceLarge"
android:textColor="#AADDEE"
android:textSize="18sp"
android:textStyle="bold" >
</TextView>
<ImageView
android:id="@+id/arrow_id"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:layout_toRightOf="@id/sales_id"
android:baselineAlignBottom="true"
android:src="@drawable/rightarrow" >
</ImageView>
<TextView
android:id="@+id/percentage_id"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_toLeftOf="@id/imagearrow_id"
android:layout_toRightOf="@id/arrow_id"
android:text="0.00%"
android:textColor="#606090"
android:textSize="18sp" >
</TextView>
<ImageView
android:id="@+id/imagearrow_id"
android:layout_width="20dp"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_marginLeft="2dp"
android:layout_weight="0"
android:gravity="right"
android:padding="5dp"
android:src="@drawable/rightarrow" >
</ImageView>
</RelativeLayout>
Теперь, независимо от того, что я делаю, он просто переходит в позицию по умолчанию в относительном макете, и только когда я использую "@+ id" вместо "@id" , он переходит в правильное положение. Я знаю, что иногда это может дать ошибку, если просмотр, пытающийся ссылаться, еще не был объявлен, но даже если я поместил текст в последний раз, я все равно не могу его получить там, где хочу, пока не буду использовать "@+ id".
это новая вещь, которая работает также с Relative Layout? потому что я понятия не имею, почему он не работает с "@id" . Я в порядке? кто-нибудь столкнулся с той же проблемой? см. некоторые руководства по сетевому использованию "@+ id" для позиционирования. Спасибо вам