所以我编程在这个循环中构建网格
for(int i = 0; i<f; i++){ //f is number of gridview to create
RelativeLayout r = new RelativeLayout(this);
r.setLayoutParams(new LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT));
realViewSwitcher.addView(r);
GridView j1 = new GridView(this);
RelativeLayout.LayoutParams params_center =
new RelativeLayout.LayoutParams(LayoutParams.MATCH_PARENT,
LayoutParams.WRAP_CONTENT);
params_center.addRule(RelativeLayout.CENTER_IN_PARENT);
j1.setNumColumns(3);
j1.setLayoutParams(params_center);
j1.setGravity(Gravity.CENTER_HORIZONTAL);
r.addView(j1);
}
然后我有一个包含一些名字的String数组。如何将这些名称设置为gridviews。例如:我有27个名字,3个gridview,3列。前9个名字在第一个网格上,9-18个名字在第二个网格上,18-27个在第三个网格上。
最好在另一个包含'true'或'false'的strign数组上显示图像。例。我们显示0-9个人,然后检查数组[0-9],如果是真,我们将图片设置为例如名称1,如果为假,我们将名称1设置为另一个图片。
答案 0 :(得分:0)
为什么要为此创建多个gridView?只需使用适配器并在其中包含您的逻辑。请谷歌搜索关于此的好教程。在单个活动中存在多个滚动组件时会遇到问题。有一个解决方法,涉及滚动视图和自定义网格视图对象,但在你去那里之前我不相信你应该为你的情况使用多个gridViews。在任何情况下,您想要做的事情的整个逻辑都可以添加到自定义gridView适配器,就像检查一样,您也可以在适配器内执行此操作。