android中網格佈局元件溢位原因
阿新 • • 發佈:2019-02-07
問題描述:這是一個簡單的網格佈局應用,計算器介面,程式碼如下:
android:layout_width= "wrap_content"
圖形介面如下,可以看到,按鈕一還在,但是其餘的按鈕在外面: 原因分析:能讓按鈕1佔一行的可能原因是,該列的寬度由該列中最寬的元件決定, 而按鈕1所在的第0列,還包含上面一個TextView和一個“清除按鈕”, 所以, ①在TextView中補一句:android:layout_columnSpan= "4",那麼第0列 TextView變成了佔4列的TextView了 ②如果你連“1”號按鈕也佔一行,請把相應屬性改為:<? xml version= "1.0" encoding= "utf-8" ?> < GridLayout 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" android :rowCount= "6" android :columnCount= "4" tools :context= "com.lifei.helloworld.TestGrid"> <!-- 定義一個橫跨 4 列的文字框,並定義前景色和背景色等屬性 --> < TextView android:id= "@+id/t1" android:layout_width= "match_parent" android:layout_height= "wrap_content" android:textSize= "50sp" android:padding= "3pt" android:background= "#eee" android:textColor= "#000" android:text= "0" /> <Button android:id= "@+id/clear" android:layout_width= "match_parent" android:layout_height= "wrap_content" android:layout_columnSpan= "4" android:text= " 清除 " /> <Button android:id= "@+id/c1" android:layout_width= "wrap_content" android:layout_height= "wrap_content" android:layout_column= "0" android:layout_row= "2" android:text= "1" /> <Button android:id= "@+id/c2" android:layout_width= "wrap_content" android:layout_height= "wrap_content" android:layout_column= "1" android:layout_row= "2" android:text= "2" /> <Button android:id= "@+id/c3" android:layout_width= "wrap_content" android:layout_height= "wrap_content" android:layout_column= "2" android:layout_row= "2" android:text= "3" /> <Button android:id= "@+id/c4" android:layout_width= "wrap_content" android:layout_height= "wrap_content" android:layout_column= "3" android:layout_row= "2" android:text= "4" /> </GridLayout >