与ImageView的问题
问题描述:
的Android GridView的所以我programaticaly构建网格在这个循环中与ImageView的问题
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,如果为false,则将名称1设置为另一图片。
答
你为什么要为此创建多个gridViews?只需使用一个适配器,并拥有您的逻辑。向谷歌请教关于此的好教程。在单个活动中使用多个滚动组件会产生问题。有一个解决方法,这涉及到一个滚动视图和一个自定义的网格视图对象,但在你甚至去那里之前我不相信你应该为你的情况使用多个gridViews。在任何情况下,您想要执行的操作的逻辑都可以添加到自定义的GridView适配器中,至于检查,您也可以在适配器内部执行该操作。