Android'de LinearLayout ile ilgili bir sorunum var. Dört düğmem var. Her düğmenin sabit bir boyutu vardır, ancak metin uzunluk olarak değişebilir.LinearLayout - Dikey olarak hizalamıyor
Benim sorunum onlar her üst kısmıyla aynı hizada olmamasıdır. Her bir bottonun içindeki metnin üst kısmı ile aynı hizada olduğu görülüyor, bu da butonun içindeki çizginin sayısına bağlı olarak değişiyor (Bkz. Resim).
Ayrıca, LinearLayout kullanmaya devam etmek istiyorum çünkü kod kullanacağı zaman veritabanına veriyi temel alan düğmeler ekleyeceğim.
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent">
<LinearLayout android:layout_width="match_parent" android:layout_height="match_parent">
<Button android:text="Line1 Line2" android:textSize="30dp" android:layout_width="160dp" android:layout_height="120dp"></Button>
<Button android:text="Line1 Line2 Line3" android:textSize="30dp" android:layout_width="160dp" android:layout_height="120dp"></Button>
<Button android:text="Line1" android:textSize="30dp" android:layout_width="160dp" android:layout_height="120dp"></Button>
<Button android:text="Line1" android:textSize="30dp" android:layout_width="160dp" android:layout_height="120dp"></Button>
</LinearLayout>
</LinearLayout>
DÜZENLEME: YANIT (kendi soruya cevap olamaz):
Tamam, ben sadece kendim cevap buldu. LinearLayout'a veya aynı davranışı gösterebilecek diğer benzer kontrollere android: baselineAligned = "false" eklemeniz gerekiyor.
Ayrıca bunu, UI tasarımcısında "Satır Taban Çizgisi Hizalama" adlı düğmeyi kullanarak da düzeltebilirsiniz.
Yani çıkan kod şudur: Peki sizin ikinci doğrusal düzen neyin Ben u için tahmin sorun yaratıyor
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent">
<LinearLayout android:baselineAligned="false" android:layout_width="match_parent" android:layout_height="match_parent">
<Button android:text="Line1 Line2" android:textSize="30dp" android:layout_width="160dp" android:layout_height="120dp"></Button>
<Button android:text="Line1 Line2 Line3" android:textSize="30dp" android:layout_width="160dp" android:layout_height="120dp"></Button>
<Button android:text="Line1" android:textSize="30dp" android:layout_width="160dp" android:layout_height="120dp"></Button>
<Button android:text="Line1" android:textSize="30dp" android:layout_width="160dp" android:layout_height="120dp"></Button>
</LinearLayout>
</LinearLayout>
Android ile ilgili ipucu için teşekkürler: baselineAligned = "false", sorunumu da çözdüm :-) –