首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 更多程式語言 >> 程式設計綜合問答

Android GridView 動態生成 Item 垂直排列:缺少 setNumColumns 設置

     編輯:程式設計綜合問答

現象

代碼動態創建 GridView,Item 顯示為單列垂直排列,而非網格。

垂直排列截圖

原因

未調用 setNumColumns(),默認列數為 1(或自動計算但需寬度)。XML 屬性 android:numColumns 在代碼中對應 setNumColumns(int)。

解決


GridView gridView = new GridView(this);
gridView.setNumColumns(5); // 固定 5 列
// 或自動適應
gridView.setNumColumns(GridView.AUTO_FIT);
gridView.setColumnWidth(200); // 僅 AUTO_FIT 時生效
gridView.setStretchMode(GridView.STRETCH_COLUMN_WIDTH); // 拉伸填充

補充:動態設置 StretchMode

XML android:stretchMode="columnWidth" 對應:
gridView.setStretchMode(GridView.STRETCH_COLUMN_WIDTH);

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved