android-水平放置相同宽度的视图,不填充所有屏幕

android-水平放置相同宽度的视图,不填充所有屏幕,android,layout,Android,Layout,我正在尝试创建菜单布局,在这里我可以将按钮放置在两个宽度相同的列中。 我不想拉伸按钮来填充所有屏幕(除非有长标签)。 我希望所有按钮都具有相同的宽度-标签最长的按钮的宽度。 我在一个水平线性布局中尝试两个垂直线性布局。 我找到的所有解决方案都建议对垂直线性布局使用相同的布局权重,对水平布局使用相同的布局宽度=填充父级,这迫使按钮占据整个屏幕宽度。 我的问题有什么共同的解决办法吗? 这就是我所期望的- 这就是常见解决方案的样子- 下面是我常用的解决方案代码: <LinearLayout

我正在尝试创建菜单布局,在这里我可以将按钮放置在两个宽度相同的列中。
我不想拉伸按钮来填充所有屏幕(除非有长标签)。
我希望所有按钮都具有相同的宽度-标签最长的按钮的宽度。
我在一个水平线性布局中尝试两个垂直线性布局。
我找到的所有解决方案都建议对垂直线性布局使用相同的布局权重,对水平布局使用相同的布局宽度=填充父级,这迫使按钮占据整个屏幕宽度。
我的问题有什么共同的解决办法吗?

这就是我所期望的-
这就是常见解决方案的样子-

下面是我常用的解决方案代码:

<LinearLayout style="@style/menuLayout"
              android:layout_width="match_parent" 
              android:orientation="horizontal"
              android:baselineAligned="false">
    <LinearLayout android:orientation="vertical"
                  android:layout_weight="1"
                  android:layout_width="0dp"
                  android:layout_height="wrap_content">
        <Button style="@style/menuButton"
                android:text="Title 1"/>
        <Button style="@style/menuButton"
                android:text="Title 2"/>
    </LinearLayout>
    <LinearLayout android:orientation="vertical"
                  android:layout_weight="1"
                  android:layout_width="0dp"
                  android:layout_height="wrap_content">
        <Button style="@style/menuButton"
                android:text="Title 3"/>
        <Button style="@style/menuButton"
                android:text="Long title 4"/>
    </LinearLayout>
</LinearLayout>

风格:

<style name="menuLayout">
    <item name="android:layout_gravity">center</item>
    <item name="android:layout_height">wrap_content</item>
    <item name="android:layout_width">wrap_content</item>
</style>
<style name="menuButton">
    <item name="android:layout_width">match_parent</item>
    <item name="android:layout_height">match_parent</item>
    <item name="android:paddingLeft">30dp</item>
    <item name="android:paddingRight">30dp</item>
    <item name="android:layout_margin">5dp</item>
</style>

居中
包装内容
包装内容
匹配父项
匹配父项
30dp
30dp
5dp

您正在设置样式“菜单布局”中的宽度,并且再次在代码的第二行中设置宽度。请删除其中一个。并尝试在父级
LinearLayout
中使用
android:weightSum=“1”
,然后在每个
LinearLayout
中使用
android:layout\u weight=“0.5”
,实际上你能弄清楚你的问题到底是什么吗?现在发生了什么?并给出一个屏幕截图,把你的代码粘贴到这里,这样我们就可以改进它了