0

我需要在一行中放置 3 个按钮。/使用 LinearLayout/。问题是在按钮上更改文本时。宽度因“android:layout_width="wrap_content" 而改变。我想确保 thab 按钮将占据屏幕宽度 i 4:4:2 的比例。子句 'wrap_content' 打破了这一点,但我不能使用确切的尺寸,因为我没有在设计时不知道设备屏幕宽度。

有人知道不使用代码解决这个问题的简单方法吗?

4

3 回答 3

1

不要将它们的宽度设置为 wrap_content。改为设置比例权重:

<LinearLayout
    ...
    layout_width = "match_parent"
    layout_height = "wrap_content" />

    <Button
        ....
        layout_width = "0dp"
        layout_height = "wrap_content"
        layout_weight = 2 />

    <Button
        ....
        layout_width = "0dp"
        layout_height = "wrap_content"
        layout_weight = 2 />

    <Button
        ....
        layout_width = "0dp"
        layout_height = "wrap_content"
        layout_weight = 1 />

</LinearLayout>
于 2012-07-19T13:24:58.843 回答
0

尝试以下:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent" >

    <LinearLayout
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_alignParentTop="true"
        android:weightSum="10"   //    SEE THIS IS 4+4+2 = 10
        android:layout_centerHorizontal="true" >

        <Button
            android:layout_weight="4"   // THIS    IS   4
            android:id="@+id/button1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Button" />

        <Button
            android:layout_weight="4"   // THIS    IS   4
            android:id="@+id/button2"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Button" />

        <Button
            android:layout_weight="2"   // THIS    IS   2
            android:id="@+id/button3"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Button" />

    </LinearLayout>

</RelativeLayout>
于 2012-07-19T13:28:43.917 回答
0

应该是 android:layout_weight="4dp"

于 2012-07-19T13:35:47.013 回答