“id 0没有键盘”?

时间:2010-10-14 14:07:18

标签: android

我是Android应用中的新手。开发,现在我遇到了一个菜单按钮的奇怪问题。事情就是这样:

我有两个活动,“ActivityOne”和“ActivityTwo”,其中“ActivityTwo”是“ActivityOne”的子活动。在这两个活动中,我已经定义了菜单按钮选项,如下所示:

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    super.onCreateOptionsMenu(menu);
    MenuItem insertMenuItem = menu.add(0, INSERT_ID, 0, R.string.menu_insert);
    insertMenuItem.setIcon(R.drawable.ic_menu_add);

    MenuItem settingMenuItem = menu.add(0, SETTING_ID, 0, R.string.menu_setting);
    settingMenuItem.setIcon(R.drawable.ic_menu_settings);

    MenuItem aboutMenuItem = menu.add(0, ABOUT_ID, 0, R.string.menu_about);
    aboutMenuItem.setIcon(R.drawable.ic_menu_about);

    logPrinter.println("creating menu options...");

    return true;
}

@Override
public boolean onMenuItemSelected(int featureId, MenuItem item) {
    switch(item.getItemId()) {
        case INSERT_ID:
            doInsert();
            return true;
        case SETTING_ID:
         return true;
        case ABOUT_ID:
         showAbout();
         return true;
    }

    return super.onMenuItemSelected(featureId, item);
}

在“ActivityOne”中,当我单击物理菜单按钮时,屏幕底部没有弹出菜单选项,当我检查LogCat控制台时,有两条警告消息,这些消息是“ 没有用于ID 0的键盘“和”使用默认keyMap:/system/usr/keychars/qwerty.kcm.bin “。

但是,在“ActivityTwo”中,菜单按钮工作正常,它显示了我定义的那些菜单选项。

为什么菜单按钮在“ActivityOne”中不起作用?警告信息的含义是什么?

1 个答案:

答案 0 :(得分:0)

“没有用于id 0的键盘”并不意味着什么。

现在,您是否已在两个活动中定义了onCreateOptionsMenu?如果没有,那就去做吧。

另外,请使用onOptionsItemSelected代替onMenuItemSelected