如何检测actionmode是否已经存在

Per*_*man 8 android dismiss android-actionbar

我在视图中有几个小部件,每个小部件都需要自己的ActionMode.我看到当用户点击操作栏之外时,ActionMode不会自动解除.因此,用户很容易为一个控件启动ActionMode,然后点击(在我的情况下为longclick)另一个控件,并在第一个控件上堆叠第二个ActionBar.这会导致编程逻辑严重破坏.

我可以使用活动级别的成员变量跟踪当前的ActionMode,如果需要新的成员变量,则忽略当前的ActionMode.但是,这使得我的代码在阅读和维护时变得混乱.而且,当用户点击操作栏之外的任何内容时,我宁愿立即将其解雇.

有关处理此问题的好方法的任何建议吗?

use*_*280 8

我前段时间正在寻找这个问题的解决方案,因为我知道如果不在全局变量中保存当前的动作模式状态,就无法跟踪它.但是,我不认为一个具有正确名称的变量会使您的代码变得混乱.