Dotyczy to tylko korzystania z RelativeLayout.
Jeśli ustawisz element, który ma być LeftOf, inny element, oznacza to, że będzie po lewej stronie tego elementu.
Ale jeśli ten element będzie nieobecny, ponieważ zostanie usunięty, na przykład będzie wyrównany do rodzica.
Weźmy przykład ten
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent" >
<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:layout_marginTop="102dp"
android:text="Large Text"
android:textAppearance="?android:attr/textAppearanceLarge" />
<TextView
android:id="@+id/textView2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignWithParentIfMissing="true"
android:layout_alignBottom="@+id/textView1"
android:layout_toRightOf="@+id/textView1"
android:text="Large Text"
android:textAppearance="?android:attr/textAppearanceLarge" />
</RelativeLayout>
zobaczyć, co się dzieje, jeśli usuniesz textView1 ale nie dotykaj textView2.
To pójdzie na dno, na lewo (nie w porządku, ponieważ jest wewnątrz rodzica)
Android będzie umieszczenie elementu w stosunku do rodziców, a nie elementem powinno być, ponieważ brakuje.
W przypadku nieprawidłowości parametry związane z brakującymi elementami zostaną zignorowane.
Nieprawidłowy parametr układu w TextView: layout_alignWithParentIfMissing - ten błąd nadchodzi – vhd
Tak! Zadziałało :) – vhd