Android中的GridLayout太大
我的Android中的GridLayout太大,android,android-gridlayout,Android,Android Gridlayout,我的GridLayout如下所示: 但它应该是这样的: 我不知道如何修正那个错误。我不使用dp,因为我想支持多种屏幕尺寸 我的.xml文件: <GridLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:id="@+id/GridLayout" android:backgro
GridLayout
如下所示:
但它应该是这样的:
我不知道如何修正那个错误。我不使用dp
,因为我想支持多种屏幕尺寸
我的.xml
文件:
<GridLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/GridLayout"
android:background="@drawable/border"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:columnCount="12"
android:rowCount="2"
android:orientation="horizontal" >
<Button
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:id="@+id/button3"
android:background="@color/red"
android:textColor="@color/white"
android:layout_gravity="left|top"
android:text="3" />
<Button
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:id="@+id/button6"
android:background="@color/black"
android:textColor="@color/white"
android:layout_gravity="left|top"
android:text="6" />
<Button
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:id="@+id/button9"
android:background="@color/red"
android:textColor="@color/white"
android:layout_gravity="left|top"
android:text="9" />
<Button
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:id="@+id/button12"
android:background="@color/red"
android:textColor="@color/white"
android:layout_gravity="left|top"
android:text="12" />
<Button
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:id="@+id/button15"
android:background="@color/black"
android:textColor="@color/white"
android:layout_gravity="left|top"
android:text="15" />
<Button
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:id="@+id/button18"
android:background="@color/red"
android:textColor="@color/white"
android:layout_gravity="left|top"
android:text="18" />
<Button
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:id="@+id/button21"
android:background="@color/red"
android:textColor="@color/white"
android:layout_gravity="left|top"
android:text="21" />
<Button
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:id="@+id/button24"
android:background="@color/black"
android:textColor="@color/white"
android:layout_gravity="left|top"
android:text="24" />
<Button
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:id="@+id/button27"
android:background="@color/red"
android:textColor="@color/white"
android:layout_gravity="left|top"
android:text="27" />
<Button
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:id="@+id/button30"
android:background="@color/red"
android:textColor="@color/white"
android:layout_gravity="left|top"
android:text="30" />
<Button
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:id="@+id/button33"
android:background="@color/black"
android:textColor="@color/white"
android:layout_gravity="left|top"
android:text="33" />
<Button
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:id="@+id/button36"
android:background="@color/red"
android:textColor="@color/white"
android:layout_gravity="left|top"
android:text="36" />
<Button
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:id="@+id/button2"
android:background="@color/black"
android:textColor="@color/white"
android:layout_gravity="left|top"
android:text="2" />
<Button
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:id="@+id/button5"
android:background="@color/red"
android:textColor="@color/white"
android:layout_gravity="left|top"
android:text="5" />
<Button
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:id="@+id/button8"
android:background="@color/black"
android:textColor="@color/white"
android:layout_gravity="left|top"
android:text="8" />
<Button
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:id="@+id/button11"
android:background="@color/black"
android:textColor="@color/white"
android:layout_gravity="left|top"
android:text="11" />
<Button
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:id="@+id/button14"
android:background="@color/red"
android:textColor="@color/white"
android:layout_gravity="left|top"
android:text="14" />
<Button
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:id="@+id/button17"
android:background="@color/black"
android:textColor="@color/white"
android:layout_gravity="left|top"
android:text="17" />
<Button
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:id="@+id/button20"
android:background="@color/black"
android:textColor="@color/white"
android:layout_gravity="left|top"
android:text="20" />
<Button
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:id="@+id/button23"
android:background="@color/red"
android:textColor="@color/white"
android:layout_gravity="left|top"
android:text="23" />
<Button
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:id="@+id/button26"
android:background="@color/black"
android:textColor="@color/white"
android:layout_gravity="left|top"
android:text="26" />
<Button
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:id="@+id/button29"
android:background="@color/black"
android:textColor="@color/white"
android:layout_gravity="left|top"
android:text="29" />
<Button
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:id="@+id/button32"
android:background="@color/red"
android:textColor="@color/white"
android:layout_gravity="left|top"
android:text="32" />
<Button
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:id="@+id/button35"
android:background="@color/black"
android:textColor="@color/white"
android:layout_gravity="left|top"
android:text="35" />
<Button
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:id="@+id/button1"
android:background="@color/red"
android:textColor="@color/white"
android:layout_gravity="left|top"
android:text="1" />
<Button
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:id="@+id/button4"
android:background="@color/black"
android:textColor="@color/white"
android:layout_gravity="left|top"
android:text="4" />
<Button
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:id="@+id/button7"
android:background="@color/red"
android:textColor="@color/white"
android:layout_gravity="left|top"
android:text="7" />
<Button
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:id="@+id/button10"
android:background="@color/black"
android:textColor="@color/white"
android:layout_gravity="left|top"
android:text="10" />
<Button
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:id="@+id/button13"
android:background="@color/black"
android:textColor="@color/white"
android:layout_gravity="left|top"
android:text="13" />
<Button
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:id="@+id/button16"
android:background="@color/red"
android:textColor="@color/white"
android:layout_gravity="left|top"
android:text="16" />
<Button
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:id="@+id/button19"
android:background="@color/red"
android:textColor="@color/white"
android:layout_gravity="left|top"
android:text="19" />
<Button
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:id="@+id/button22"
android:background="@color/black"
android:textColor="@color/white"
android:layout_gravity="left|top"
android:text="22" />
<Button
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:id="@+id/button25"
android:background="@color/red"
android:textColor="@color/white"
android:layout_gravity="left|top"
android:text="25" />
<Button
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:id="@+id/button28"
android:background="@color/black"
android:textColor="@color/white"
android:layout_gravity="left|top"
android:text="28" />
<Button
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:id="@+id/button31"
android:background="@color/black"
android:textColor="@color/white"
android:layout_gravity="left|top"
android:text="31" />
<Button
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:id="@+id/button34"
android:background="@color/red"
android:textColor="@color/white"
android:layout_gravity="left|top"
android:text="34" />
</GridLayout>
您知道如何解决这个问题吗?请记住,dp unity与屏幕的像素比有关,并且由android自动调整以适应当前显示 请记住,可以根据屏幕大小、屏幕密度和屏幕方向为标注变量指定不同的值 您要做的是设置一个相对于轮子的尺寸,它不是一个元素,所以您想设置什么样的按钮网格宽度?你不能用这种方式实现你的目标 对我来说,你应该把你的背景分割成两个图像:第一个带轮子,第二个带背景的其余部分。然后,您可以使用RelativeLayout,其中控制盘定位在其父对象的左侧,第二个图像是GridLayout的背景,定位在控制盘图像的右侧。通过这种方式,您可以将GridLayout width设置为
match\u parent
,与toRightOf
一起使用,结果是GridLayout占据了右侧的所有空白
我举一个例子:
<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”>
<ImageView
android:id="@+id/wheel”
android:layout_width=“wrap_content”
android:layout_height="match_parent”
android:src=“@drawable/wheel” />
<GridLayout
android:id="@+id/GridLayout"
android:background="@drawable/border"
android:layout_width=“match_parent”
android:layout_height="wrap_content"
android:toRightOf=“@+id/wheel”
android:layout_alignParentRight="true"
android:columnCount="12"
android:rowCount="2"
android:orientation="horizontal" >
<Button
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:id="@+id/button3"
android:background="@color/red"
android:textColor="@color/white"
android:layout_gravity="left|top"
android:text="3" />
<Button
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:id="@+id/button6"
android:background="@color/black"
android:textColor="@color/white"
android:layout_gravity="left|top"
android:text="6" />
<Button
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:id="@+id/button9"
android:background="@color/red"
android:textColor="@color/white"
android:layout_gravity="left|top"
android:text="9" />
<Button
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:id="@+id/button12"
android:background="@color/red"
android:textColor="@color/white"
android:layout_gravity="left|top"
android:text="12" />
<Button
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:id="@+id/button15"
android:background="@color/black"
android:textColor="@color/white"
android:layout_gravity="left|top"
android:text="15" />
<Button
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:id="@+id/button18"
android:background="@color/red"
android:textColor="@color/white"
android:layout_gravity="left|top"
android:text="18" />
<Button
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:id="@+id/button21"
android:background="@color/red"
android:textColor="@color/white"
android:layout_gravity="left|top"
android:text="21" />
<Button
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:id="@+id/button24"
android:background="@color/black"
android:textColor="@color/white"
android:layout_gravity="left|top"
android:text="24" />
<Button
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:id="@+id/button27"
android:background="@color/red"
android:textColor="@color/white"
android:layout_gravity="left|top"
android:text="27" />
<Button
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:id="@+id/button30"
android:background="@color/red"
android:textColor="@color/white"
android:layout_gravity="left|top"
android:text="30" />
<Button
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:id="@+id/button33"
android:background="@color/black"
android:textColor="@color/white"
android:layout_gravity="left|top"
android:text="33" />
<Button
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:id="@+id/button36"
android:background="@color/red"
android:textColor="@color/white"
android:layout_gravity="left|top"
android:text="36" />
<Button
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:id="@+id/button2"
android:background="@color/black"
android:textColor="@color/white"
android:layout_gravity="left|top"
android:text="2" />
<Button
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:id="@+id/button5"
android:background="@color/red"
android:textColor="@color/white"
android:layout_gravity="left|top"
android:text="5" />
<Button
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:id="@+id/button8"
android:background="@color/black"
android:textColor="@color/white"
android:layout_gravity="left|top"
android:text="8" />
<Button
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:id="@+id/button11"
android:background="@color/black"
android:textColor="@color/white"
android:layout_gravity="left|top"
android:text="11" />
<Button
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:id="@+id/button14"
android:background="@color/red"
android:textColor="@color/white"
android:layout_gravity="left|top"
android:text="14" />
<Button
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:id="@+id/button17"
android:background="@color/black"
android:textColor="@color/white"
android:layout_gravity="left|top"
android:text="17" />
<Button
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:id="@+id/button20"
android:background="@color/black"
android:textColor="@color/white"
android:layout_gravity="left|top"
android:text="20" />
<Button
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:id="@+id/button23"
android:background="@color/red"
android:textColor="@color/white"
android:layout_gravity="left|top"
android:text="23" />
<Button
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:id="@+id/button26"
android:background="@color/black"
android:textColor="@color/white"
android:layout_gravity="left|top"
android:text="26" />
<Button
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:id="@+id/button29"
android:background="@color/black"
android:textColor="@color/white"
android:layout_gravity="left|top"
android:text="29" />
<Button
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:id="@+id/button32"
android:background="@color/red"
android:textColor="@color/white"
android:layout_gravity="left|top"
android:text="32" />
<Button
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:id="@+id/button35"
android:background="@color/black"
android:textColor="@color/white"
android:layout_gravity="left|top"
android:text="35" />
<Button
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:id="@+id/button1"
android:background="@color/red"
android:textColor="@color/white"
android:layout_gravity="left|top"
android:text="1" />
<Button
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:id="@+id/button4"
android:background="@color/black"
android:textColor="@color/white"
android:layout_gravity="left|top"
android:text="4" />
<Button
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:id="@+id/button7"
android:background="@color/red"
android:textColor="@color/white"
android:layout_gravity="left|top"
android:text="7" />
<Button
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:id="@+id/button10"
android:background="@color/black"
android:textColor="@color/white"
android:layout_gravity="left|top"
android:text="10" />
<Button
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:id="@+id/button13"
android:background="@color/black"
android:textColor="@color/white"
android:layout_gravity="left|top"
android:text="13" />
<Button
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:id="@+id/button16"
android:background="@color/red"
android:textColor="@color/white"
android:layout_gravity="left|top"
android:text="16" />
<Button
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:id="@+id/button19"
android:background="@color/red"
android:textColor="@color/white"
android:layout_gravity="left|top"
android:text="19" />
<Button
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:id="@+id/button22"
android:background="@color/black"
android:textColor="@color/white"
android:layout_gravity="left|top"
android:text="22" />
<Button
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:id="@+id/button25"
android:background="@color/red"
android:textColor="@color/white"
android:layout_gravity="left|top"
android:text="25" />
<Button
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:id="@+id/button28"
android:background="@color/black"
android:textColor="@color/white"
android:layout_gravity="left|top"
android:text="28" />
<Button
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:id="@+id/button31"
android:background="@color/black"
android:textColor="@color/white"
android:layout_gravity="left|top"
android:text="31" />
<Button
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:id="@+id/button34"
android:background="@color/red"
android:textColor="@color/white"
android:layout_gravity="left|top"
android:text="34" />
</GridLayout>
</RelativeLayout>
我认为在GridLayout中使用android:layout\u width=“wrap\u content”而不是android:layout\u width=“match\u parent”@fireglovesno,因为match_parent和toRightOf以及alignParentRight的结合应该会导致使用车轮右侧的所有可用空间Ohhh..是的,您使用了toRightOf。我忘了。所以我可以使用dp吗?它在更大的设备上看起来是一样的?不,它有点复杂。但您可以使用不同的dimens.xml文件来匹配不同的屏幕大小。您应该使用值-[identificator]文件夹名称来实现此目标