Android library中生成的R.java中的资源ID不是常数
不再使用switch…case
if (list.size() < 4) {
switch (v.getId()) {
case R.id.blinkBtn:
list.add(getResources().getString(R.string.blink));
myadapter.notifyDataSetChanged();
break;
case R.id.nodBtn:
list.add(getResources().getString(R.string.nod));
myadapter.notifyDataSetChanged();
break;
case R.id.mouthBtn:
list.add(getResources().getString(R.string.mouth));
myadapter.notifyDataSetChanged();
break;
case R.id.yawBtn:
list.add(getResources().getString(R.string.yaw));
myadapter.notifyDataSetChanged();
break;
case R.id.doneBtn:
for (int i = 0; i < list.size(); i++) {
mStringBuffer.append(list.get(i).toString() + " ");
}
SharedPreferences sp = getApplicationContext().getSharedPreferences(Constants.DETECTLIST, MODE_PRIVATE);
Editor editor = sp.edit();
editor.putString(Constants.DETECTLIST, mStringBuffer.toString());
editor.commit();
finish();
break;
}
修改为:
int id = v.getId();
if (list.size() < 4) {
if (id == R.id.blinkBtn) {
list.add(getResources().getString(R.string.blink));
myadapter.notifyDataSetChanged();
}else if (id == R.id.nodBtn){
list.add(getResources().getString(R.string.nod));
myadapter.notifyDataSetChanged();
}else if (id== R.id.mouthBtn){
list.add(getResources().getString(R.string.mouth));
myadapter.notifyDataSetChanged();
}else if (id ==R.id.yawBtn ){
list.add(getResources().getString(R.string.yaw));
myadapter.notifyDataSetChanged();
}else if (id== R.id.doneBtn){
for (int i = 0; i < list.size(); i++) {
mStringBuffer.append(list.get(i).toString() + " ");
}
SharedPreferences sp = getApplicationContext().getSharedPreferences(Constants.DETECTLIST, MODE_PRIVATE);
Editor editor = sp.edit();
editor.putString(Constants.DETECTLIST, mStringBuffer.toString());
editor.commit();
finish();
}