我试图使用一个循环来设置单击时每个按钮的动作(因为大多数按钮只会返回它们的文本值),但是我得到一个错误,声明“变量’我是从内部类中访问的,需要被宣布为最终“.我怎么能绕过这个?
这是我得到的
String getValuespressed(){ for(int i = 0; i < buttonList.length; i++){ buttonList[i].setonClickListener(new View.OnClickListener() { @Override public void onClick(View v) { if(i == 0){//error occurs here //do stuff } } }); } return textOnScreen; }
解决方法
您可以将i的值复制到临时最终变量中 –
for (int i = 0; i < buttonList.length; i++) { final int finalI = i; buttonList[i].setonClickListener(new View.OnClickListener() { @Override public void onClick(View v) { if (finalI == 0) {//error occurs here //do stuff } } }); }
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。