我使用了以下 xml 代码来创建布局。
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/main_layout"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_gravity="center_vertical" >
<EditText
android:id="@+id/entry"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:inputType="phone" />
<TableLayout
android:id="@+id/table"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_below="@id/entry"
android:stretchColumns="*" >
<TableRow>
<Button
android:id="@+id/zero"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_column="0"
android:clickable="true"
android:focusable="true"
android:focusableInTouchMode="true"
android:gravity="center"
android:text="@string/zero"
android:textSize="10pt"
android:visibility="visible" />
<Button
android:id="@+id/one"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_column="1"
android:clickable="true"
android:focusable="true"
android:focusableInTouchMode="true"
android:gravity="center"
android:text="@string/one"
android:textSize="10pt"
android:visibility="visible" />
<Button
android:id="@+id/two"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_column="2"
android:clickable="true"
android:focusable="true"
android:focusableInTouchMode="true"
android:gravity="center"
android:text="@string/two"
android:textSize="10pt"
android:visibility="visible" />
<Button
android:id="@+id/three"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_column="3"
android:clickable="true"
android:focusable="true"
android:focusableInTouchMode="true"
android:gravity="center"
android:text="@string/three"
android:textSize="10pt"
android:visibility="visible" />
<Button
android:id="@+id/four"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_column="4"
android:clickable="true"
android:focusable="true"
android:focusableInTouchMode="true"
android:gravity="center"
android:text="@string/four"
android:textSize="10pt"
android:visibility="visible" />
<Button
android:id="@+id/five"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_column="5"
android:clickable="true"
android:focusable="true"
android:focusableInTouchMode="true"
android:gravity="center"
android:text="@string/five"
android:textSize="10pt"
android:visibility="visible" />
</TableRow>
<View
android:layout_height="2dip"
android:background="#FF909090" />
<TableRow>
<Button
android:id="@+id/six"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_column="0"
android:clickable="true"
android:focusable="true"
android:focusableInTouchMode="true"
android:gravity="center"
android:text="@string/six"
android:textSize="10pt"
android:visibility="visible" />
<Button
android:id="@+id/seven"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_column="1"
android:clickable="true"
android:focusable="true"
android:focusableInTouchMode="true"
android:gravity="center"
android:text="@string/seven"
android:textSize="10pt"
android:visibility="visible" />
<Button
android:id="@+id/eight"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_column="2"
android:clickable="true"
android:focusable="true"
android:focusableInTouchMode="true"
android:gravity="center"
android:text="@string/eight"
android:textSize="10pt"
android:visibility="visible" />
<Button
android:id="@+id/nine"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_column="3"
android:clickable="true"
android:focusable="true"
android:focusableInTouchMode="true"
android:gravity="center"
android:text="@string/nine"
android:textSize="10pt"
android:visibility="visible" />
<Button
android:id="@+id/delete"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_column="4"
android:clickable="true"
android:focusable="true"
android:focusableInTouchMode="true"
android:gravity="center"
android:text="@string/delete"
android:textSize="10pt"
android:visibility="visible" />
<Button
android:id="@+id/finish"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_column="5"
android:clickable="true"
android:focusable="true"
android:focusableInTouchMode="true"
android:gravity="center"
android:text="@string/finish"
android:textSize="10pt"
android:visibility="visible" />
</TableRow>
</TableLayout>
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_below="@id/table"
android:layout_gravity="center_vertical"
android:orientation="horizontal" >
<Button
android:id="@+id/ok"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="left"
android:clickable="true"
android:gravity="left"
android:text="@string/OK"
android:textSize="10pt"
android:visibility="visible" />
<Button
android:id="@+id/home"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="right"
android:clickable="true"
android:gravity="center"
android:text="@string/home"
android:textSize="10pt"
android:visibility="visible" />
</LinearLayout>
</RelativeLayout>
因为我是新用户,所以不允许我发布输出图像。最后两个按钮 Ok 和 home 紧跟在 table 后面。我希望它们向下移向屏幕(也大且居中)。我希望文本框在屏幕顶部留出一些空间后出现。如何添加空白使其看起来更好,我应该引用哪些属性,请给我建议..
最佳答案
要在小部件之间留出一些空间,您可以使用 margin
属性。例如,如果您希望 EditText
在顶部有一些空间,您可以使用 android:layout_marginTop="5dp"
。要在底部设置最后一个 LinearLayout
添加 android:alignParentBottom="true"
并将按钮居中添加到相同的 LinearLayout
this, android:gravity="center
.
关于android - android中的布局设计,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9225771/