Android 检查动态添加的复选框的状态
我动态添加复选框,如下所示:Android 检查动态添加的复选框的状态,android,checkbox,onclick,Android,Checkbox,Onclick,我动态添加复选框,如下所示: public void addFiles() { LinearLayout layout = (LinearLayout) findViewById(R.id.filesList); if(!FileManagerActivity.finalAttachFiles.isEmpty()) { for (final File file:
public void addFiles()
{
LinearLayout layout = (LinearLayout) findViewById(R.id.filesList);
if(!FileManagerActivity.finalAttachFiles.isEmpty())
{
for (final File file:FileManagerActivity.finalAttachFiles)
{
Log.i("what I've got", file.toString());
View line = new View(this);
line.setLayoutParams(new LayoutParams(1, LayoutParams.MATCH_PARENT));
line.setBackgroundColor(0xAA345556);
informationView= new CheckBox(this);
informationView.setTextColor(Color.BLACK);
informationView.setTextSize(16);
informationView.setGravity(Gravity.CENTER_VERTICAL | Gravity.CENTER_HORIZONTAL);
informationView.setCompoundDrawablesWithIntrinsicBounds(R.drawable.file_icon, 0, 0, 0);
informationView.setText(file.getName().toString());
layout.addView(informationView, 0);
layout.addView(line, 1);
layout.postInvalidate();
}
}
}
我有一个按钮,onClick事件应该获取这些复选框的可检查状态并删除选中的复选框…我如何实现这一点?
for(int I=0;Ifor(int I=0;I您可以使用informationView.setId(someUniqueInt)设置复选框的id)
。然后通过在“活动”中找到所需的文本框
for(int i=0;i<layout.getChildCount;i++){
if ( ((CheckBox) layout.getChildAt(i)).isChecked() )
//remove the Box
}
CheckBox=(CheckBox)findViewById(someUniqueInt)
然后使用
if (checkBox.isChecked()) {
//do whatever you want here
}
您可以使用informationView.setId(someUniqueInt)
设置复选框的id,然后通过以下方式在活动中找到所需的文本框:
CheckBox=(CheckBox)findViewById(someUniqueInt)
然后使用
if (checkBox.isChecked()) {
//do whatever you want here
}
您可以添加以下复选框:
for(int i=0;i<totalCB;i++){
CheckBox chB=new CheckBox(context);
...
chB.setId(i);
layout.add(...);// add checkbox to view
}
for(int i=0;i您可以添加以下复选框:
for(int i=0;i<totalCB;i++){
CheckBox chB=new CheckBox(context);
...
chB.setId(i);
layout.add(...);// add checkbox to view
}
对于(int i=0;i好主意,我试着像你建议的那样做,但我得到了ClassCastException这是一种方法,只需在强制转换之前添加:if(child instanceof Checkable){好主意,我试着像你建议的那样做,但我得到了ClassCastException这是一种方法,只需在强制转换之前添加:if(child instanceof Checkable){@RikkiTikkiTavi:很乐意帮忙!:)@RikkiTikkiTavi:很乐意帮忙!:)