无论如何在xml中执行此操作而不使用具体值?
我试图通过计算设备屏幕大小以编程方式进行,但我认为它在xml中是可行的。
注意:我使用的是gridlayout,而不是gridview。
这是我的xml布局文件
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/whole_screen"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:weightSum="8"
android:orientation="vertical" >
<ImageView
android:id="@+id/topStrip"
android:layout_width="match_parent"
android:layout_height="0dip"
android:layout_weight="2"
android:scaleType="fitXY" >
</ImageView>
<RelativeLayout
android:id="@+id/behindChessBoard"
android:layout_width="match_parent"
android:layout_height="0dip"
android:layout_weight="4" >
<GridLayout
android:id="@+id/chessBoard"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:numColumns="8" >
<ImageButton
android:id="@+id/cell00"
android:layout_width="1dp"
android:layout_height="1dp"
android:layout_column="0"
android:layout_row="0"
android:scaleType="fitXY"
android:background="@color/chessTan"
android:contentDescription="00" />
<ImageButton
android:id="@+id/cell01"
android:layout_width="1dp"
android:layout_height="1dp"
android:layout_column="1"
android:layout_row="0"
android:scaleType="fitXY"
android:background="@color/chessBrown"
android:contentDescription="01" />
<ImageButton
android:id="@+id/cell02"
android:layout_width="1dp"
android:layout_height="1dp"
android:layout_column="2"
android:layout_row="0"
android:scaleType="fitXY"
android:background="@color/chessTan"
android:contentDescription="02" />
<ImageButton
android:id="@+id/cell03"
android:layout_width="1dp"
android:layout_height="1dp"
android:layout_column="3"
android:layout_row="0"
android:scaleType="fitXY"
android:background="@color/chessBrown"
android:contentDescription="03" />
<ImageButton
android:id="@+id/cell04"
android:layout_width="1dp"
android:layout_height="1dp"
android:layout_column="4"
android:layout_row="0"
android:scaleType="fitXY"
android:background="@color/chessTan"
android:contentDescription="04" />
<ImageButton
android:id="@+id/cell05"
android:layout_width="1dp"
android:layout_height="1dp"
android:layout_column="5"
android:layout_row="0"
android:scaleType="fitXY"
android:background="@color/chessBrown"
android:contentDescription="05" />
<ImageButton
android:id="@+id/cell06"
android:layout_width="1dp"
android:layout_height="1dp"
android:layout_column="6"
android:layout_row="0"
android:scaleType="fitXY"
android:background="@color/chessTan"
android:contentDescription="06" />
<ImageButton
android:id="@+id/cell07"
android:layout_width="1dp"
android:layout_height="1dp"
android:layout_column="7"
android:layout_row="0"
android:scaleType="fitXY"
android:background="@color/chessBrown"
android:contentDescription="07" />
<ImageButton
android:id="@+id/cell10"
android:layout_width="1dp"
android:layout_height="1dp"
android:layout_column="0"
android:layout_row="1"
android:scaleType="fitXY"
android:background="@color/chessBrown"
android:contentDescription="10" />
<ImageButton
android:id="@+id/cell11"
android:layout_width="1dp"
android:layout_height="1dp"
android:layout_column="1"
android:layout_row="1"
android:scaleType="fitXY"
android:background="@color/chessTan"
android:contentDescription="11" />
<ImageButton
android:id="@+id/cell12"
android:layout_width="1dp"
android:layout_height="1dp"
android:layout_column="2"
android:layout_row="1"
android:scaleType="fitXY"
android:background="@color/chessBrown"
android:contentDescription="12" />
<ImageButton
android:id="@+id/cell13"
android:layout_width="1dp"
android:layout_height="1dp"
android:layout_column="3"
android:layout_row="1"
android:scaleType="fitXY"
android:background="@color/chessTan"
android:contentDescription="13" />
<ImageButton
android:id="@+id/cell14"
android:layout_width="1dp"
android:layout_height="1dp"
android:layout_column="4"
android:layout_row="1"
android:scaleType="fitXY"
android:background="@color/chessBrown"
android:contentDescription="14" />
<ImageButton
android:id="@+id/cell15"
android:layout_width="1dp"
android:layout_height="1dp"
android:layout_column="5"
android:layout_row="1"
android:scaleType="fitXY"
android:background="@color/chessTan"
android:contentDescription="15" />
<ImageButton
android:id="@+id/cell16"
android:layout_width="1dp"
android:layout_height="1dp"
android:layout_column="6"
android:layout_row="1"
android:scaleType="fitXY"
android:background="@color/chessBrown"
android:contentDescription="16" />
<ImageButton
android:id="@+id/cell17"
android:layout_width="1dp"
android:layout_height="1dp"
android:layout_column="7"
android:layout_row="1"
android:scaleType="fitXY"
android:background="@color/chessTan"
android:contentDescription="17" />
<ImageButton
android:id="@+id/cell20"
android:layout_width="1dp"
android:layout_height="1dp"
android:layout_column="0"
android:layout_row="2"
android:scaleType="fitXY"
android:background="@color/chessTan"
android:contentDescription="20" />
<ImageButton
android:id="@+id/cell21"
android:layout_width="1dp"
android:layout_height="1dp"
android:layout_column="1"
android:layout_row="2"
android:scaleType="fitXY"
android:background="@color/chessBrown"
android:contentDescription="21" />
<ImageButton
android:id="@+id/cell22"
android:layout_width="1dp"
android:layout_height="1dp"
android:layout_column="2"
android:layout_row="2"
android:scaleType="fitXY"
android:background="@color/chessTan"
android:contentDescription="22" />
<ImageButton
android:id="@+id/cell23"
android:layout_width="1dp"
android:layout_height="1dp"
android:layout_column="3"
android:layout_row="2"
android:scaleType="fitXY"
android:background="@color/chessBrown"
android:contentDescription="23" />
<ImageButton
android:id="@+id/cell24"
android:layout_width="1dp"
android:layout_height="1dp"
android:layout_column="4"
android:layout_row="2"
android:scaleType="fitXY"
android:background="@color/chessTan"
android:contentDescription="24" />
<ImageButton
android:id="@+id/cell25"
android:layout_width="1dp"
android:layout_height="1dp"
android:layout_column="5"
android:layout_row="2"
android:scaleType="fitXY"
android:background="@color/chessBrown"
android:contentDescription="25" />
<ImageButton
android:id="@+id/cell26"
android:layout_width="1dp"
android:layout_height="1dp"
android:layout_column="6"
android:layout_row="2"
android:scaleType="fitXY"
android:background="@color/chessTan"
android:contentDescription="26" />
<ImageButton
android:id="@+id/cell27"
android:layout_width="1dp"
android:layout_height="1dp"
android:layout_column="7"
android:layout_row="2"
android:scaleType="fitXY"
android:background="@color/chessBrown"
android:contentDescription="27" />
<ImageButton
android:id="@+id/cell30"
android:layout_width="1dp"
android:layout_height="1dp"
android:layout_column="0"
android:layout_row="3"
android:scaleType="fitXY"
android:background="@color/chessBrown"
android:contentDescription="30" />
<ImageButton
android:id="@+id/cell31"
android:layout_width="1dp"
android:layout_height="1dp"
android:layout_column="1"
android:layout_row="3"
android:scaleType="fitXY"
android:background="@color/chessTan"
android:contentDescription="31" />
<ImageButton
android:id="@+id/cell32"
android:layout_width="1dp"
android:layout_height="1dp"
android:layout_column="2"
android:layout_row="3"
android:scaleType="fitXY"
android:background="@color/chessBrown"
android:contentDescription="32" />
<ImageButton
android:id="@+id/cell33"
android:layout_width="1dp"
android:layout_height="1dp"
android:layout_column="3"
android:layout_row="3"
android:scaleType="fitXY"
android:background="@color/chessTan"
android:contentDescription="33" />
<ImageButton
android:id="@+id/cell34"
android:layout_width="1dp"
android:layout_height="1dp"
android:layout_column="4"
android:layout_row="3"
android:scaleType="fitXY"
android:background="@color/chessBrown"
android:contentDescription="34" />
<ImageButton
android:id="@+id/cell35"
android:layout_width="1dp"
android:layout_height="1dp"
android:layout_column="5"
android:layout_row="3"
android:scaleType="fitXY"
android:background="@color/chessTan"
android:contentDescription="35" />
<ImageButton
android:id="@+id/cell36"
android:layout_width="1dp"
android:layout_height="1dp"
android:layout_column="6"
android:layout_row="3"
android:scaleType="fitXY"
android:background="@color/chessBrown"
android:contentDescription="36" />
<ImageButton
android:id="@+id/cell37"
android:layout_width="1dp"
android:layout_height="1dp"
android:layout_column="7"
android:layout_row="3"
android:scaleType="fitXY"
android:background="@color/chessTan"
android:contentDescription="37" />
<ImageButton
android:id="@+id/cell40"
android:layout_width="1dp"
android:layout_height="1dp"
android:layout_column="0"
android:layout_row="4"
android:scaleType="fitXY"
android:background="@color/chessTan"
android:contentDescription="40" />
<ImageButton
android:id="@+id/cell41"
android:layout_width="1dp"
android:layout_height="1dp"
android:layout_column="1"
android:layout_row="4"
android:scaleType="fitXY"
android:background="@color/chessBrown"
android:contentDescription="41" />
<ImageButton
android:id="@+id/cell42"
android:layout_width="1dp"
android:layout_height="1dp"
android:layout_column="2"
android:layout_row="4"
android:scaleType="fitXY"
android:background="@color/chessTan"
android:contentDescription="42" />
<ImageButton
android:id="@+id/cell43"
android:layout_width="1dp"
android:layout_height="1dp"
android:layout_column="3"
android:layout_row="4"
android:scaleType="fitXY"
android:background="@color/chessBrown"
android:contentDescription="43" />
<ImageButton
android:id="@+id/cell44"
android:layout_width="1dp"
android:layout_height="1dp"
android:layout_column="4"
android:layout_row="4"
android:scaleType="fitXY"
android:background="@color/chessTan"
android:contentDescription="44" />
<ImageButton
android:id="@+id/cell45"
android:layout_width="1dp"
android:layout_height="1dp"
android:layout_column="5"
android:layout_row="4"
android:scaleType="fitXY"
android:background="@color/chessBrown"
android:contentDescription="45" />
<ImageButton
android:id="@+id/cell46"
android:layout_width="1dp"
android:layout_height="1dp"
android:layout_column="6"
android:layout_row="4"
android:scaleType="fitXY"
android:background="@color/chessTan"
android:contentDescription="46" />
<ImageButton
android:id="@+id/cell47"
android:layout_width="1dp"
android:layout_height="1dp"
android:layout_column="7"
android:layout_row="4"
android:scaleType="fitXY"
android:background="@color/chessBrown"
android:contentDescription="47" />
<ImageButton
android:id="@+id/cell50"
android:layout_width="1dp"
android:layout_height="1dp"
android:layout_column="0"
android:layout_row="5"
android:scaleType="fitXY"
android:background="@color/chessBrown"
android:contentDescription="50" />
<ImageButton
android:id="@+id/cell51"
android:layout_width="1dp"
android:layout_height="1dp"
android:layout_column="1"
android:layout_row="5"
android:scaleType="fitXY"
android:background="@color/chessTan"
android:contentDescription="51" />
<ImageButton
android:id="@+id/cell52"
android:layout_width="1dp"
android:layout_height="1dp"
android:layout_column="2"
android:layout_row="5"
android:scaleType="fitXY"
android:background="@color/chessBrown"
android:contentDescription="52" />
<ImageButton
android:id="@+id/cell53"
android:layout_width="1dp"
android:layout_height="1dp"
android:layout_column="3"
android:layout_row="5"
android:scaleType="fitXY"
android:background="@color/chessTan"
android:contentDescription="53" />
<ImageButton
android:id="@+id/cell54"
android:layout_width="1dp"
android:layout_height="1dp"
android:layout_column="4"
android:layout_row="5"
android:scaleType="fitXY"
android:background="@color/chessBrown"
android:contentDescription="54" />
<ImageButton
android:id="@+id/cell55"
android:layout_width="1dp"
android:layout_height="1dp"
android:layout_column="5"
android:layout_row="5"
android:scaleType="fitXY"
android:background="@color/chessTan"
android:contentDescription="55" />
<ImageButton
android:id="@+id/cell56"
android:layout_width="1dp"
android:layout_height="1dp"
android:layout_column="6"
android:layout_row="5"
android:scaleType="fitXY"
android:background="@color/chessBrown"
android:contentDescription="56" />
<ImageButton
android:id="@+id/cell57"
android:layout_width="1dp"
android:layout_height="1dp"
android:layout_column="7"
android:layout_row="5"
android:scaleType="fitXY"
android:background="@color/chessTan"
android:contentDescription="57" />
<ImageButton
android:id="@+id/cell60"
android:layout_width="1dp"
android:layout_height="1dp"
android:layout_column="0"
android:layout_row="6"
android:scaleType="fitXY"
android:background="@color/chessTan"
android:contentDescription="60" />
<ImageButton
android:id="@+id/cell61"
android:layout_width="1dp"
android:layout_height="1dp"
android:layout_column="1"
android:layout_row="6"
android:scaleType="fitXY"
android:background="@color/chessBrown"
android:contentDescription="61" />
<ImageButton
android:id="@+id/cell62"
android:layout_width="1dp"
android:layout_height="1dp"
android:layout_column="2"
android:layout_row="6"
android:scaleType="fitXY"
android:background="@color/chessTan"
android:contentDescription="62" />
<ImageButton
android:id="@+id/cell63"
android:layout_width="1dp"
android:layout_height="1dp"
android:layout_column="3"
android:layout_row="6"
android:scaleType="fitXY"
android:background="@color/chessBrown"
android:contentDescription="63" />
<ImageButton
android:id="@+id/cell64"
android:layout_width="1dp"
android:layout_height="1dp"
android:layout_column="4"
android:layout_row="6"
android:scaleType="fitXY"
android:background="@color/chessTan"
android:contentDescription="64" />
<ImageButton
android:id="@+id/cell65"
android:layout_width="1dp"
android:layout_height="1dp"
android:layout_column="5"
android:layout_row="6"
android:scaleType="fitXY"
android:background="@color/chessBrown"
android:contentDescription="65" />
<ImageButton
android:id="@+id/cell66"
android:layout_width="1dp"
android:layout_height="1dp"
android:layout_column="6"
android:layout_row="6"
android:scaleType="fitXY"
android:background="@color/chessTan"
android:contentDescription="66" />
<ImageButton
android:id="@+id/cell67"
android:layout_width="1dp"
android:layout_height="1dp"
android:layout_column="7"
android:layout_row="6"
android:scaleType="fitXY"
android:background="@color/chessBrown"
android:contentDescription="67" />
<ImageButton
android:id="@+id/cell70"
android:layout_width="1dp"
android:layout_height="1dp"
android:layout_column="0"
android:layout_row="7"
android:scaleType="fitXY"
android:background="@color/chessBrown"
android:contentDescription="70" />
<ImageButton
android:id="@+id/cell71"
android:layout_width="1dp"
android:layout_height="1dp"
android:layout_column="1"
android:layout_row="7"
android:scaleType="fitXY"
android:background="@color/chessTan"
android:contentDescription="71" />
<ImageButton
android:id="@+id/cell72"
android:layout_width="1dp"
android:layout_height="1dp"
android:layout_column="2"
android:layout_row="7"
android:scaleType="fitXY"
android:background="@color/chessBrown"
android:contentDescription="72" />
<ImageButton
android:id="@+id/cell73"
android:layout_width="1dp"
android:layout_height="1dp"
android:layout_column="3"
android:layout_row="7"
android:scaleType="fitXY"
android:background="@color/chessTan"
android:contentDescription="73" />
<ImageButton
android:id="@+id/cell74"
android:layout_width="1dp"
android:layout_height="1dp"
android:layout_column="4"
android:layout_row="7"
android:scaleType="fitXY"
android:background="@color/chessBrown"
android:contentDescription="74" />
<ImageButton
android:id="@+id/cell75"
android:layout_width="1dp"
android:layout_height="1dp"
android:layout_column="5"
android:layout_row="7"
android:scaleType="fitXY"
android:background="@color/chessTan"
android:contentDescription="75" />
<ImageButton
android:id="@+id/cell76"
android:layout_width="1dp"
android:layout_height="1dp"
android:layout_column="6"
android:layout_row="7"
android:scaleType="fitXY"
android:background="@color/chessBrown"
android:contentDescription="76" />
<ImageButton
android:id="@+id/cell77"
android:layout_width="1dp"
android:layout_height="1dp"
android:layout_column="7"
android:layout_row="7"
android:scaleType="fitXY"
android:background="@color/chessTan"
android:contentDescription="77" />
</GridLayout>
<ImageButton
android:id="@+id/undoButton"
android:layout_width="30dp"
android:layout_height="30dp"
android:layout_centerVertical="true"
android:scaleType="fitXY"
android:padding="0dp"
android:layout_toLeftOf="@+id/chessBoard"
android:layout_marginRight="10dp"
android:clickable="true" />
<ImageButton
android:id="@+id/saveButton"
android:layout_width="33px"
android:layout_height="26px"
android:layout_centerVertical="true"
android:scaleType="fitXY"
android:padding="0dp"
android:layout_toRightOf="@+id/chessBoard"
android:layout_marginLeft="10dp"
android:clickable="true" />
<ImageButton
android:id="@+id/loadButton"
android:layout_width="70px"
android:layout_height="24px"
android:layout_centerVertical="true"
android:scaleType="fitXY"
android:padding="0dp"
android:layout_toRightOf="@+id/chessBoard"
android:layout_marginTop="10dp"
android:layout_below="@+id/saveButton"
android:clickable="true" />
<ImageButton
android:id="@+id/deleteButton"
android:layout_width="70px"
android:layout_height="24px"
android:layout_centerVertical="true"
android:scaleType="fitXY"
android:padding="0dp"
android:layout_toRightOf="@+id/chessBoard"
android:layout_marginTop="10dp"
android:layout_below="@+id/loadButton"
android:clickable="true" />
<Button
android:id="@+id/doneButton"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_below="@+id/loadButton"
android:layout_toRightOf="@+id/chessBoard"
android:text="Done"
android:textSize="10sp"
android:visibility="invisible" />
<CheckBox
android:id="@+id/sound_check_box"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:button="@drawable/sound_selector"
android:layout_alignLeft="@+id/saveButton"
android:layout_alignParentRight="true"
android:layout_below="@+id/deleteButton"
android:text=" SFX"
android:textColor="@color/white"
android:textSize="10sp" />
</RelativeLayout>
<ImageView
android:id="@+id/bottomStrip"
android:layout_width="match_parent"
android:layout_height="0dip"
android:layout_weight="2"
android:scaleType="fitXY" />
</LinearLayout>
答案 0 :(得分:0)
you can fit your height and width bye device screen resoultion
-coulmn_width=screen_widht/8
-coulmn_height=screen_height/8
Use two value coulmn_width and coulmn_heigh for gridlayout
About gridlayout prefer this link