获取菜单点击

时间:2010-06-29 20:14:40

标签: android

好吧,这可能很简单,但我不知道怎么做!我通过XML定义了菜单,如下所示。它加载和一切。

<menu xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:id="@+id/home"
          android:title="Home" />
    <item android:id="@+id/about"
          android:title="About" />
    <item android:id="@+id/quit"
          android:title="Quit" />
</menu>

现在,通过onOptionsItemSelected(),如何判断选择了哪个菜单项?

这是一个例子......情况会怎样?

public boolean onOptionsItemSelected(MenuItem item) {
    switch (item.getItemId()) {
    case 1:
        Toast.makeText(this, "Home", Toast.LENGTH_LONG).show();
        return true;
    case 2:
        Toast.makeText(this, "About", Toast.LENGTH_LONG).show();
        return true;
    case 3:
        Toast.makeText(this, "Quit", Toast.LENGTH_LONG).show();
        return true;
    }
    return false;
}

1 个答案:

答案 0 :(得分:1)

您的案例陈述应使用xml中定义的ID:

case R.id.home:
    ....
case R.id.about:
    ....
case R.id.quit:
    ....
default:
    throw new IllegalStateException("oops, forgot to code something");

默认情况只是好习惯imho。 :)