Android 操作栏响应用户

Android Action Bar Responding to users

我在 android 中使用我的应用程序的某些方法时遇到问题。我正在尝试响应用户按下的按钮。方法如下:

 public boolean onOptionsItemSelected(MenuItem item) {
     switch (item.getItemId()) {
        case R.id.action_search:
            openSearch();
            return true;

        case R.id.action_settings:
            openSettings();
            return true;

        default:
            return super.onContextItemSelected(item);
    }     
 }

我正在查看 google 提供的关于此的文档,它说应该根据用户的操作调用这些方法。我错过了什么吗?

错误信息区:

Error:(42, 17) 错误:找不到符号方法 openSearch()

错误:(46, 17) 错误:找不到符号方法 openSettings()

如有任何帮助,我们将不胜感激!

谢谢

上述函数不会在按钮按下事件上执行。当用户从菜单中选择一个项目时执行。

目前,编译器不知道 class 中是否存在这样的方法签名。您需要在 class 中定义函数,然后使用它们。我想它会很好用。

您尚未在定义 onOptionsItemSelected 的 Activity 中定义方法 openSettings()openSearch()

这样的结果是编译器会告诉你cannot find symbol method openSearch()cannot find symbol method openSettings()

您只需在 Activity:

中添加方法声明
private void openSettings(){
    //Execute relevant code
}

private void openSearch(){
    //Execute relevant code
}