我試圖在相對佈局中創建字母按鈕。主要問題是我不能設置按鈕保持1:1的寬高比並在屏幕上正確顯示它。Android相對佈局網格按鈕
這就是我想要達到的目標:
按鈕應始終爲1:1和文本喊叫按鈕中間開始。 到目前爲止,我嘗試了網格佈局,並把按鈕放在5x5研磨。但如果我設置按鈕W/H,讓我們說50dp在某些顯示我能看到的只有ABC和D
另外一半我試圖把在LinearLayout中,如:
<RelativeLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_above="@id/adSponsor"
android:layout_below="@id/barSearch"
android:layout_margin="20dp">
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
android:orientation="vertical">
<LinearLayout
android:id="@+id/buttonPanel"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal">
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_margin="5dp"
android:layout_weight="1"
android:background="@drawable/letter_button"
android:gravity="center|top"
android:text="A"
android:textAlignment="gravity"
android:textColor="@color/red"
android:textSize="@dimen/letter_box_text"
android:textStyle="bold" />
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_margin="5dp"
android:layout_weight="1"
android:background="@drawable/letter_button"
android:gravity="center|top"
android:text="B"
android:textAlignment="gravity"
android:textColor="@color/red"
android:textSize="@dimen/letter_box_text"
android:textStyle="bold" />
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_margin="5dp"
android:layout_weight="1"
android:background="@drawable/letter_button"
android:gravity="center|top"
android:text="C"
android:textAlignment="gravity"
android:textColor="@color/red"
android:textSize="@dimen/letter_box_text"
android:textStyle="bold" />
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_margin="5dp"
android:layout_weight="1"
android:background="@drawable/letter_button"
android:gravity="center|top"
android:text="D"
android:textAlignment="gravity"
android:textColor="@color/red"
android:textSize="@dimen/letter_box_text"
android:textStyle="bold" />
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_margin="5dp"
android:layout_weight="1"
android:background="@drawable/letter_button"
android:gravity="center|top"
android:text="E"
android:textAlignment="gravity"
android:textColor="@color/red"
android:textSize="@dimen/letter_box_text"
android:textStyle="bold" />
</LinearLayout>
</LinearLayout>
</RelativeLayout>
但在這種情況下,按鈕不是1:1的寬高比。
有人可以指我什麼是實現這一目標的正確方法。此外,按鈕喊中間。按鈕和搜索欄之間的距離以及按鈕和頁腳之間的按鈕應該是相同的。
但是...哪裏** Y **? –
而不是這種可怕的佈局嵌套(高度灰心)......爲什麼不使用GridLayout?或者,作爲替代方案,使用GridView的RelativeLayout? –