我在一个视图中有几个小部件,每个小部件都需要自己的 ActionMode。我看到当用户在操作栏外点击时,ActionMode 不会自动关闭。因此,用户很容易为一个控件启动一个 ActionMode,然后点击(在我的情况下长按)另一个控件并在第一个控件的顶部堆叠第二个 ActionBar。这会导致编程逻辑混乱。
我可以使用活动级别的成员变量来跟踪当前的 ActionMode,如果需要新的成员变量,我可以关闭当前的。但是,这使我的代码阅读和维护变得混乱。此外,当用户点击操作栏外的任何内容时,我更愿意立即关闭它。
关于处理这个问题的好方法有什么建议吗?