private GridLayout grid;
grid = (GridLayout) view.findViewById(R.id.grid_music_type);
item_width = (MainActivity.WINDOW_WIDTH - 22) / 3;//MainActivity.WINDOW_WIDTH为屏幕宽度,
array_type = getResources().getStringArray(R.array.type_music);//这是我自定义的数组。
for (int i = 0; i < 10; i++) {//增加10个子视图,gridLayout的排序方式为默认排序
View item = View.inflate(getActivity(), R.layout.music_type_item,
null);
/**
* 只能通过这种代码方式设置布局
*/
TextView tv1 = (TextView) item.findViewById(R.id.type_item);// type_item_detail
TextView tv2 = (TextView) item.findViewById(R.id.type_item_detail);
tv1.setText(array_type[i]);
tv2.setText("");
LayoutParams params = new LayoutParams(item_width, item_width);//每个子视图的高度和宽度
params.setMargins(2, 2, 2, 2);//子视图直接的空隙大小
item.setId(i);
item.setOnClickListener(this);
item.setLayoutParams(new GridLayout.LayoutParams(params));//通过代码的方式给GridLayout设置样式
grid.addView(item);
}
music_type_item.xml为自定义的布局文件,可以随机设置,这里就不贴出来了
显示的效果图为