如何将布局宽度设置为屏幕全宽的80%?

时间:2011-05-04 01:21:43

标签: android layout

像问题一样,像我这样的傻瓜如何通过xml实现类似的东西?如果没有,请以编程方式感谢。

更新

感谢您的帮助,现在这是我布局的结果

<TableLayout android:layout_width="match_parent" android:layout_gravity="center"
     android:layout_weight="10" android:layout_height="wrap_content">
    <TableRow android:layout_weight="10">
        <TextView android:id="@+id/labelVaccinesImmuDialog"
            android:layout_weight="0"
            android:layout_width="match_parent"
            android:text="@string/vaccine_spinner_label" android:layout_gravity="center_vertical" />
        <Spinner android:id="@+id/spinnerVaccinesImmuDialog"
            android:layout_weight="8"
            android:layout_width="0dp"
            android:prompt="@string/vaccine_spinner_label" android:layout_height="44dp"/>

    </TableRow>
    <TableRow android:layout_weight="10">
        <Button android:id="@+id/buttonDatePickerImmuDialog"
            android:text="@string/datepicker_button_label"
            android:layout_weight="0"
            android:layout_width="match_parent"
            android:layout_height="44dp"/>
        <EditText android:id="@+id/editDateImmuDialog"
            android:singleLine="true"
            android:layout_weight="8"
            android:padding="5px"
            android:layout_width="0dp"
            android:text="@string/immu_dialog_date_edit" android:layout_height="44dp"/>
    </TableRow>
    <TableRow android:layout_weight="10">
        <TextView android:id="@+id/labelAdverseReactions"
            android:text="@string/immu_dialog_adverse_reaction_label"
            android:layout_gravity="center_vertical"
            android:layout_weight="0"
            android:layout_width="match_parent"/>
        <Spinner android:id="@+id/spinnerAdverseReactionsImmuDialog"
            android:layout_weight="8"
            android:padding="5px"
            android:layout_width="0dp"
            android:text="@string/immu_dialog_adverse_reaction_spinner_label" android:layout_height="44dp"/>
    </TableRow>
    <TableRow android:layout_weight="10">
        <TextView android:id="@+id/labelDoctorWhoAdministered"
            android:text="@string/immu_dialog_doctor_administered_label"
            android:layout_weight="0"
            android:layout_gravity="center_vertical" android:layout_width="match_parent"/>
        <EditText android:id="@+id/editDoctorWhoAdministeredImmuDialog"
            android:singleLine="true"
            android:layout_width="0dp"
            android:layout_weight="8"
            android:padding="5px"
            android:text="@string/immu_dialog_doctor_administered_edit" android:layout_height="44dp"/>
    </TableRow>
    <TableRow android:layout_weight="10">
        <Button android:id="@+id/buttonSubmitImmuDialog" 
        android:layout_weight="0"
        android:text="@string/immu_dialog_submit_button" android:layout_height="44dp"/>
        <Button android:id="@+id/buttonCancelImmuDialog"
        android:layout_weight="8"
        android:layout_width="0dp"
        android:text="@string/immu_dialog_cancel_button" android:layout_height="44dp"/>
    </TableRow>

</TableLayout>

1 个答案:

答案 0 :(得分:7)

在线性布局中,您可以使用另一个对象来使用其他20%,然后使用layout_weight

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent" android:layout_height="fill_parent"
    android:orientation="horizontal">
    <LinearLayout android:orientation="horizontal"
        android:layout_height="fill_parent" android:layout_width="fill_parent"
        android:layout_weight=".2" android:background="#ffaa0000" />
    <LinearLayout android:id="@+id/textLayout"
        android:orientation="horizontal" android:layout_height="fill_parent"
        android:layout_width="fill_parent" android:layout_weight=".8" />
</LinearLayout>

在tablerows中

<?xml version="1.0" encoding="utf-8"?>

<TableLayout android:id="@+id/TableLayout01"
    android:layout_width="fill_parent" android:layout_height="wrap_content">
    <TableRow android:id="@+id/TableRow01" android:layout_width="fill_parent"
        android:layout_height="wrap_content">

            <TextView android:text="@+id/TextView01" android:id="@+id/TextView01"
                android:layout_width="0dp" android:layout_height="wrap_content"
                android:layout_weight="10"></TextView>

            <TextView android:text="@+id/TextView01" android:id="@+id/TextView01"
                android:layout_width="0dp" android:layout_height="wrap_content"
                android:layout_weight="1"></TextView>

    </TableRow>
    <TableRow android:id="@+id/TableRow01" android:layout_width="fill_parent"
        android:layout_height="wrap_content">
        <TextView android:text="@+id/TextView01" android:id="@+id/TextView01"
                android:layout_width="0dp" android:layout_height="wrap_content"
                android:layout_weight="10"></TextView>

            <TextView android:text="@+id/TextView01" android:id="@+id/TextView01"
                android:layout_width="0dp" android:layout_height="wrap_content"
                android:layout_weight="1"></TextView>

    </TableRow>

</TableLayout>