给GridLayout设置字视图的大小和视图之间的距离

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为自定义的布局文件,可以随机设置,这里就不贴出来了


显示的效果图为



展开阅读全文

没有更多推荐了,返回首页