我在 ActionBar (Sherlock) 上有两个选项卡。在某些情况下,我想询问用户是否尝试离开当前选项卡并在未确认时停止选项卡更改。这主要是由于在用户在另一个选项卡上摆弄其设置之前停止了一个进程。
当我使用 TabHost 时,我有一个非常丑陋但可行的解决方案,在选项卡本身上有一个 OnTouchListener,所以我可以在事件真正处理之前拦截它。似乎 ActionBar 选项卡不能有触摸监听器,所以这似乎是不可能的。
现在有了 ActionBar,我有了 TabListeners 来处理 FragmentTransaction 上的分离和附加。有什么简单的方法可以取消交易吗?我想我可以对 onTabUnselected 和 onTabSelected 进行检查,只是不进行相应的分离和附加操作,但这感觉有点复杂。
如果停止标签更改听起来过于愚蠢,我也愿意接受其他建议。