如您所见,我在Buttons
中有四行RelativeLayout
。如何让Buttons
均匀覆盖屏幕宽度?
我尝试了各种各样的事情,但没有任何效果:我尝试将RelativeLayout
宽度设置为match_parent
并使所有Button's
layout_width
= { {1}}以及各种各样的事情。
有什么想法吗?
fill_parent
答案 0 :(得分:2)
最好的方法是使用四个垂直线性布局,每个布局在水平线性布局中包含其按钮。确保所有按钮宽度均为fill_parent
然后将权重属性设置为每个LinearLayouts width = match_parent并设置Buttons layout_weight =“1”使LinearLayouts width = match_parent并将Buttons layout_weight =“1”设置为1,如下所示:
android:layout_weight = "1"
确保线性布局宽度也设置为match_parent
基本上,这会增加权重并将屏幕宽度划分为按钮之间。
问题的解决方案是权重。
希望这会有所帮助。快乐的编码:)
P.S。如果这回答了您的问题,请将此标记为正确答案
答案 1 :(得分:0)
您可以获取屏幕尺寸并使用它们来决定按钮尺寸
Display display = getWindowManager().getDefaultDisplay();
Point size = new Point();
display.getSize(size);
int width = size.x;
int height = size.y;
然后使用这些尺寸来确定按钮的大小(每个尺寸的宽度除以4)
摆弄这个应该可以让你到达你想要的地方
答案 2 :(得分:0)
为什么不将LinearLayout
和weight
属性用于一行?它可能是这样的:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".Game" >
<RelativeLayout
android:id = "@+id/rl"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginTop="20dp"
>
<LinearLayout
android:id="@+id/ll_row_1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal">
<Button
android:id="@+id/button0"
android:layout_width="@dimen/size"
android:layout_height="@dimen/size"
android:background="@drawable/button"
android:onClick="ButtonOnClick"
android:layout_weight="1"
android:tag="0"/>
<Button
android:id="@+id/button1"
android:layout_width="@dimen/size"
android:layout_height="@dimen/size"
android:layout_weight="1"
android:background="@drawable/button"
android:onClick="ButtonOnClick"
android:tag="0"/>
<Button
android:id="@+id/button2"
android:layout_width="@dimen/size"
android:layout_height="@dimen/size"
android:background="@drawable/button"
android:onClick="ButtonOnClick"
android:layout_weight="1"
android:tag="0"/>
<Button
android:id="@+id/button3"
android:layout_width="@dimen/size"
android:layout_height="@dimen/size"
android:background="@drawable/button"
android:onClick="ButtonOnClick"
android:layout_weight="1"
android:tag="0"/>
</LinearLayout>
...
...
...
<LinearLayout
android:id="@+id/ll_row_4"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:layout_below="@+id/ll_row_3">
<Button
android:id="@+id/button12"
android:layout_width="@dimen/size"
android:layout_height="@dimen/size"
android:background="@drawable/button"
android:layout_weight="1"
android:onClick="ButtonOnClick"
android:tag="0"/>
<Button
android:id="@+id/button13"
android:layout_width="@dimen/size"
android:layout_height="@dimen/size"
android:layout_weight="1"
android:background="@drawable/button"
android:onClick="ButtonOnClick"
android:tag="0"/>
<Button
android:id="@+id/button14"
android:layout_width="@dimen/size"
android:layout_height="@dimen/size"
android:layout_weight="1"
android:background="@drawable/button"
android:onClick="ButtonOnClick"
android:tag="0"/>
<Button
android:id="@+id/button15"
android:layout_width="@dimen/size"
android:layout_height="@dimen/size"
android:layout_weight="1"
android:background="@drawable/button"
android:onClick="ButtonOnClick"
android:tag="0"/>
</LinearLayout>
</RelativeLayout>
</RelativeLayout>
如果它不起作用,请尝试设置按钮&#39; android:layout_width
属性0dp