在Android中动态添加onClick ActionListener到CheckBox



我正在创建一个应用程序,它根据数据库中的条目数动态地创建复选框。

代码运行良好。并创建若干复选框。但我想动态地将onClick Action Listener添加到CheckBoxes中。如何做到这一点

我把代码贴在这里:

SQLiteDatabase db = this.getReadableDatabase();
String countQuery = "SELECT  * FROM " + TABLE_NAME;
SQLiteDatabase db = this.getReadableDatabase();
Cursor cursor = db.rawQuery(countQuery, null);
int maxCount = cursor.getCount();
CheckBox[] check = new CheckBox[maxCount];
cursor.moveToFirst();
int checkboxid = 100;
int alarm_id;
for(int i=0;i<maxCount;i++)
{
    check[i]= new CheckBox(this);
setCheckBoxId(i+maxCount);
}

现在如何添加actionlistener到这些动态创建的复选框

check[i]= new CheckBox(this);
check[i].setOnClickListener(this);

在创建文本框时,您将需要根据复选框id进行检查或为文本框设置标记。

check[i].setTag(someIdentifier);

则使用

方法
@Override
public void onClick(View v) {
                 if (v.getTag.equals(someIdentifier)){
                    //do stuff here
                  }
        }

check[i]= new CheckBox(this);下面添加这个,你的复选框将有一个all clicklistener

check[i].setOnClickListener(new View.OnClickListener() {
                    public void onClick(View v) {
                        // your code to be executed on click :)
                    }
                });

最新更新