我动态创建了复选框。根据需求列表大小,我正在以重复的方式创建新的动态复选框,并且还为此设置了Id。现在我想在其他循环中检查它。
for(int i=0;i<require.size();i++)
{
//From Requirements
requirement=require.get(i);
RelativeLayout rl1 = new RelativeLayout(getActivity());
rl1.setBackgroundResource(R.drawable.listviewdesign);
l1.setOrientation(LinearLayout.VERTICAL);
req1 = new CheckBox(getActivity());
rl1.addView(req1);
req1.setId(Integer.parseInt(requirement.r_id));
Log.i("getid",Integer.toString(req1.getId()));
li.add(Integer.toString(req1.getId()));
}
在这个循环中我只是检查li和proj_require1值的元素。如果两者相等,那么我想将CheckBox设置为已选中。为此,我在这里写了代码。
for(int i=0;i<li.size();i++)
{
//li.get(i);
req1 = (CheckBox) container.findViewById(i);
String sr = req1.toString();
for(int j=0;j<proj_require1.size();j++)
{
pr = proj_require1.get(j);
if(sr.equals(pr.rid))
{
req1.setChecked(!req1.isChecked());
}
else
{
req1.setChecked(req1.isChecked());
}
}
}
但我怀疑是在第一个循环中根据require对象的大小创建CheckBox。所以每次在循环中创建CheckBox。但是在第二个循环中我试图访问在第一个循环中创建的复选框。有谁可以帮我解决这个问题?唯一的方法是我可以在第一个循环中创建CheckBox。我想在其他循环中访问它。有可能吗?