Der Begriff Baseline stammt aus der Typografie . Es sind die unsichtbaren Zeilenbuchstaben im Text.
Stellen Sie sich zum Beispiel vor, Sie platzieren zwei TextView
Elemente nebeneinander. Sie geben dem zweiten TextView
eine große Polsterung (sagen wir 20dp). Wenn Sie layout_alignBaseline
dem zweiten Element hinzufügen , wird der Text "nach oben verschoben", um ihn an der Grundlinie des ersten Elements auszurichten. Der Text beider Elemente wird so angezeigt, als ob sie in derselben unsichtbaren Zeile geschrieben wären.
<RelativeLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent" >
<TextView
android:id="@+id/text1"
android:text="aatlg"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
/>
<TextView
android:text="joof"
android:background="#00ff00"
android:padding="20dp"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_toRightOf="@id/text1"
android:layout_alignBaseline="@id/text1"
/>
</RelativeLayout>
Hier ist eine visuelle Erklärung, die Cristians Antwort verdeutlichen könnte:
<RelativeLayout android:layout_width="fill_parent" android:layout_height="fill_parent" > <TextView android:id="@+id/text1" android:text="Lorem" android:background="@android:color/holo_blue_light" android:layout_width="wrap_content" android:layout_height="wrap_content" /> <TextView android:text="Ipsum" android:background="@android:color/holo_orange_light" android:padding="20dp" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_toRightOf="@id/text1" android:layout_alignBaseline="@id/text1" /> </RelativeLayout>
Dieser Code sieht folgendermaßen aus:
Wenn ich nun das
android:layout_alignBaseline
Attribut entferne , sieht das gleiche Layout folgendermaßen aus:Es ist interessant zu beobachten, dass sich dies auf die Höhe der orangefarbenen Ansicht auswirkt (im ersten Fall wird die Polsterung nicht oben in der Ansicht angewendet).
quelle