android - 防止 View 显示两个上下文菜单

标签 android

在我的 Android 应用程序中,我有一个按钮,单击它会打开上下文菜单。问题在于,如果用户快速点击,他们可以打开菜单的多个实例。

b.setOnClickListener( new OnClickListener() {
@Override
public void onClick( View view ) {
    // popup options            
    view.showContextMenu();
}
} );

如何防止用户打开多个副本?我正在寻找一个“ bool 值”,比如检查可见状态,但似乎找不到任何东西。我希望有一个函数会以某种方式导致代码类似于:

if (context menu is not open)
     open context menu
else 
     don't do anything

最佳答案

我真的不喜欢这种 UI 模式。正是这种事情导致 iOS 开发人员(和用户)认为 Android 开发人员缺乏纪律。上下文菜单用于长按,句号。在别处使用其他东西,例如 AlertDialogPopupMenu

也就是说,在显示上下文菜单时设置一个 boolean 标志,首先检查它以防止重复菜单。清除 onContextMenuClosed() 中的标志。

关于android - 防止 View 显示两个上下文菜单,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6334214/

相关文章:

java - Perfectomobile 初始化错误

android - 使用 onView(withId(...)) 时使用 Espresso 单击操作栏中的菜单项

android - 如何退出谷歌认证?

javascript - 使用 FileTransfer 插件 Phonegap 在 Android 设备上保存 PDF 的位置

java - 在类中访问数组时出现 NullPointerException

android - 如何根据那里的位置在 RecyclerView 中隐藏/显示 imageview

android - onListItemClick() 不适用于 Android 中的 ListView

android - 如何在模拟器上安装android market

android - 避免将jar依赖打包成aar

android - 如何信任 Android SSL PKCS12 证书