制作8x8 GridLayout填充整个屏幕宽度

时间:2013-12-25 04:18:51

标签: android android-gridlayout

无论如何在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>

1 个答案:

答案 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  

Gridlayout see this link also