如何更改Android XML中列的宽度?

时间:2013-04-05 20:43:07

标签: android xml android-ui

我搜索了这个并且找不到适合我的答案。我目前在第5个标签上有2列。我想将第1列的40%和第2列的宽度设为60%。

我尝试使用android:layout_weight并将第1列中的1对象设置为等于0.4,将另一列设置为等于0.6,但无济于事。有什么想法吗?

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent">

    <TabHost
        android:id="@+id/tabhost"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_weight="1" >

        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:orientation="vertical" >

            <TabWidget
                android:id="@android:id/tabs"
                android:layout_width="match_parent"
                android:layout_height="wrap_content" >
            </TabWidget>

            <FrameLayout
                android:id="@android:id/tabcontent"
                android:layout_width="match_parent"
                android:layout_height="match_parent" >

                <LinearLayout
                    android:id="@+id/tab1"
                    android:layout_width="match_parent"
                    android:layout_height="match_parent" >

                    <Button android:text="Start"
                            android:id="@+id/btn_StartWatch"
                            android:layout_width="wrap_content"
                            android:layout_height="wrap_content"/>

                    <Button android:text="Stop"
                            android:id="@+id/btn_StopWatch"
                            android:layout_width="wrap_content"
                            android:layout_height="wrap_content"/>

                    <TextView android:text="TextView"
                              android:id="@+id/tv_ShowResults"
                              android:layout_width="wrap_content"
                              android:layout_height="wrap_content"/>
                </LinearLayout>

                <LinearLayout
                    android:id="@+id/tab2"
                    android:layout_width="match_parent"
                    android:layout_height="match_parent" >

                    <TextView android:text="TextView2"
                              android:id="@+id/textView2"
                              android:layout_width="wrap_content"
                              android:layout_height="wrap_content"/>
                </LinearLayout>

                <LinearLayout
                    android:id="@+id/tab3"
                    android:layout_width="match_parent"
                    android:layout_height="match_parent" >

                    <TextView android:text="TextView3"
                              android:id="@+id/textView3"
                              android:layout_width="wrap_content"
                              android:layout_height="wrap_content"/>
                </LinearLayout>

                <LinearLayout
                    android:id="@+id/tab4"
                    android:layout_width="match_parent"
                    android:layout_height="match_parent" >
                </LinearLayout>


                <LinearLayout
                    android:id="@+id/tab5"
                    android:layout_width="match_parent"
                    android:layout_height="match_parent" >

                    <TableLayout android:id="@+id/details"
                        android:layout_width="fill_parent"
                        android:layout_height="wrap_content"
                        android:stretchColumns="1"
                        android:paddingTop="4dp">
                        <TableRow>
                            <TextView android:text="Name:" />
                            <EditText
                                android:id="@+id/txtResName"
                                android:layout_width="wrap_content"
                                android:layout_height="wrap_content"
                                android:ems="10"
                                android:inputType="textPersonName" >
                                <requestFocus />
                            </EditText>
                        </TableRow>

                        <TableRow>
                            <TextView android:text="Type:" />
                            <RadioGroup android:id="@+id/types">
                                <RadioButton android:id="@+id/chcType1"
                                    android:text="Type 1"/>
                                <RadioButton android:id="@+id/chcType2"
                                    android:text="Type 2"/>
                            </RadioGroup>

                            <TextView android:text="Date:" />
                            <EditText
                                android:id="@+id/txtResDate"
                                android:layout_width="wrap_content"
                                android:layout_height="wrap_content"
                                android:ems="10"
                                android:inputType="date" />
                        </TableRow>

                        <TableRow>
                            <TextView android:text="Time:" />
                            <EditText
                                android:id="@+id/txtResTime"
                                android:layout_width="wrap_content"
                                android:layout_height="wrap_content"
                                android:ems="10"
                                android:inputType="time" />

                            <TextView android:text="Test" />
                            <EditText
                                android:id="@+id/txtResNumber"
                                android:layout_width="wrap_content"
                                android:layout_height="wrap_content"
                                android:ems="10"
                                android:inputType="number" />
                        </TableRow>

                        <TableRow>
                            <TextView android:text="Test 2" />
                            <EditText
                                android:id="@+id/txtResTest2"
                                android:layout_width="wrap_content"
                                android:layout_height="wrap_content"
                                android:ems="10"
                                android:inputType="phone" />

                            <TextView android:text="Notes:" />
                            <EditText
                                android:id="@+id/txtResNotes"
                                android:layout_width="wrap_content"
                                android:layout_height="wrap_content"
                                android:lines="2"
                                android:maxLines="2"
                                android:ems="10"
                                android:maxWidth="200sp"
                                android:inputType="textMultiLine" />
                        </TableRow>
                    </TableLayout>
                </LinearLayout>
            </FrameLayout>
        </LinearLayout>
    </TabHost>
</LinearLayout>

1 个答案:

答案 0 :(得分:1)

您需要将layout_width属性指定为“0px”。然后你的layout_weight属性将决定实际的宽度。