我正在尝试将事件侦听器添加到我的View中的三个复选框。但是当我在Android平板电脑上测试它时,只有一个复选框的事件监视器工作...请帮助。 (注意:我对编程很陌生,所以请详细解释。谢谢!)
Edit1:模型类基本上负责生成REGEX字符串。这三个复选框为用户提供了包含/排除数字/数字/锚点以创建REGEX字符串的选项。下面的代码是负责向3个复选框添加eventlisteners的控制器,但我不确定我是否做得对。
EDIT2:通过在CheckBox之前添加final来修复它...不知道它为什么起作用:S
// a method in my controller
public void checkListener() {
CheckBox dig = (CheckBox) findViewById(R.id.dig);
CheckBox blarg = (CheckBox) findViewById(R.id.blarg);
CheckBox duff = (CheckBox) findViewById(R.id.duff);
dig.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
if (((CheckBox) view).isChecked()) {
model.setLetter(true); //setting a bool val in my model class
newRegex(); // this method generates a regex string from the model class and outputs it into the View }
else {
model.setLetter(false);
newRegex(); // generates a regex string and updates the view
}
}
blarg.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
if (((CheckBox) view).isChecked()) {
model.setSomething(true); //setting a bool val in my model class
newRegex();
}
else {
model.setSomething(false);
newRegex();
}
}
duff.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
if (((CheckBox) view).isChecked()) {
model.setAlpha(true);
newRegex();
}
else {
model.setAlpha(false); //setting a bool val in my model class
newRegex();
}
}
}