我需要在一行中放置3个按钮./使用LinearLayout /。 问题是在按钮上更改文本时。由于“android:layout_width =”wrap_content“,宽度会发生变化。我想确保按钮的屏幕宽度是4:4:2比例。条款'wrap_content'破坏了这个,但我不能使用确切的大小,因为我不喜欢在设计时知道设备屏幕宽度。
有人知道如何在不使用代码的情况下解决这个问题吗?
答案 0 :(得分: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>
答案 1 :(得分: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>
答案 2 :(得分:0)
应该是 机器人:layout_weight =&#34; 4DP&#34;