我正在尝试让我的case语句根据按下的按钮打开另一个类。我的这个工作正常,只需一个按钮,但我不确定如何继续使用两个按钮。
到目前为止我的代码:
public void onClick(View v) {
switch (v.getId()) {
case R.id.about_button:
Intent i = new Intent(this, About.class);
startActivity(i);
break;
case R.id.reminderList_button:
Intent i = new Intent (this, ReminderListActivity.class);
startActivity(i);
break;
}
}
这会产生错误,因为我正在重复使用本地变量(i) - 如果有人能让我知道如何正确地执行此操作,那将非常感激。
答案 0 :(得分:3)
您可以在switch语句之前声明变量i
。如果您打算在switch语句后使用变量i
,那么这特别优于“范围”:
public void onClick(View v) {
Intent i = null;
switch (v.getId()) {
case R.id.about_button:
i = new Intent(this, About.class);
break;
case R.id.reminderList_button:
i = new Intent (this, ReminderListActivity.class);
break;
}
startActivity(i);
...; // other statements using `i'
}
答案 1 :(得分:1)
范围。
public void onClick(View v) {
switch (v.getId()) {
case R.id.about_button:
{
Intent i = new Intent(this, About.class);
startActivity(i);
break;
}
case R.id.reminderList_button:
{
Intent i = new Intent (this, ReminderListActivity.class);
startActivity(i);
break;
}
}
}