gpt4 book ai didi

java - onOptionsItemSelected() 应该返回什么,true 还是 false?

转载 作者:塔克拉玛干 更新时间:2023-11-02 21:55:43 24 4
gpt4 key购买 nike

我正在学习 menu inflater,我正在学习的教程说我们应该在此函数中返回 false。但是,当我返回 true 时,我没有注意到任何变化或差异。所以问题是:

  • 我应该返回什么以及为什么?

谢谢

最佳答案

如果您希望进行正常处理,则返回 false。否则,返回真。

参见 Documentation .

默认情况下,当您返回 false 时,Android 会调用与该项目关联的 Runnable 或运行您可以在 MenuItem 上使用 setIntent(...) 设置的 Intent。如果您不希望这种情况发生,您应该返回 true。

假设您按如下方式创建 MenuItem。

MenuItem menu1 = new MenuItem(this);
menu1.setIntent(myIntent);

此处 myIntent 是您在单击菜单项时想要执行的操作。例如:假设您的菜单项启动 GMail 应用程序以发送电子邮件,文本显示在您的 Activity 的 TextView 中。

在您的 onOptionsItemSelected() 回调中,您可以检查 TextView 的值,如果 TextView 不为空则返回 false(文本框中有内容,您可以触发Intent 到 GMail)否则会显示一个消息框,提示“请先输入一条消息”并返回 true,这样 Android 就不会触发 Intent。

public boolean onOptionsItemSelected (MenuItem item) {
if (textView.getText().trim().equals("")){
// show the message dialog
return true;
}
else {
// we have some message. We can let android know that
// it is safe to fire the intent.
return false;
}
}

希望对你有帮助...快乐编码。

关于java - onOptionsItemSelected() 应该返回什么,true 还是 false?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11921440/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com