我创建了自己的可绘制对象,我将其设置为图像按钮的背景。(这里描述)
<?xml version="1.0" encoding="utf-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="oval">
<solid android:color="#A7BF1D"/> </shape>
我希望这些在屏幕侧面垂直均匀分布,所以我想使用 android:layout_weight 来实现这一点。(这里描述)
<LinearLayout
android:id="@+id/left_bar"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_weight="8">
<Button
android:id="@+id/btnCall"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_gravity="1"
android:background="@drawable/btn_circle"
android:text="Call"
android:textSize="12sp" />
<Space
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_gravity="1"></Space>
<Button
android:id="@+id/btnSpeak"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_gravity="1"
android:background="@drawable/btn_circle"
android:text="Speak"
android:textSize="12sp" />
<Space
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_gravity="1"></Space>
<Button
android:id="@+id/btnRecordedMessage"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_gravity="1"
android:background="@drawable/btn_circle"
android:text="Recorded Message"
android:textSize="12sp" />
<Space
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_gravity="1"></Space>
<Button
android:id="@+id/btnSelectAll"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_gravity="1"
android:background="@drawable/btn_circle"
android:text="Select All Units"
android:textSize="12sp" />
<Space
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_gravity="1"></Space>
<Button
android:id="@+id/btnDeselectUnits"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_gravity="1"
android:background="@drawable/btn_circle"
android:text="Deselect Units"
android:textSize="12sp" />
<Space
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_gravity="1"></Space>
<Button
android:id="@+id/btnAnswer"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_gravity="1"
android:background="@drawable/btn_circle"
android:text="Answer"
android:textSize="12sp" />
</LinearLayout>
无论我做什么,我似乎都无法让它们在任何屏幕尺寸上均匀分布,更不用说为它们中的每一个缩放了。我认为我的问题是我必须指定高度和宽度来形成圆圈,但是一旦我这样做,它就会与 layout_weight 一样(因为需要更好的术语)“硬编码”。
我认为可以有 6 个圆形按钮的垂直布局,在屏幕上等距分布,但我不知道怎么做?我也试过没有<Space>
, 而是添加了填充<Button>
。