Android的新工具栏和上下文操作栏如何协同工作?

Tho*_*ler 9 android android-actionbar contextual-action-bar

我正在重新设计我现在的应用程序,大致跟随Chris Bane的优秀介绍.但有一件事让我震惊:

如果我将新的v7-appcompat设置Toolbar为动作栏替换setSupportActionBar()并从中派生我的主题Theme.AppCompat.Light.NoActionBar,那么上下文操作栏(CAB)仍会弹出并按下我的内容(包括工具栏):

现在,我可以尝试使CAB覆盖我的工具栏,但我认为后退按钮的UI(基本上是指标和位置)和CAB的文本也与工具栏不匹配(如图所示),所以我想知道工具栏实现中是否存在"CAB"模式,以便工具栏也可以接管这个角色?

Chr*_*nes 30

您需要在主题中设置以下内容:

<item name="windowActionModeOverlay">true</item>
Run Code Online (Sandbox Code Playgroud)

这将使内容视图的操作模式覆盖,从而覆盖工具栏.

  • 非常感谢指针克里斯!正如我所想,覆盖是解决方案.但是,正如您在上面的屏幕截图中看到的,有几个视觉问题:(1)取消CAB的后退按钮位于右侧而不是工具栏上的按钮,(2)左侧有一个灯条"Textauswahl",以及(3)CAB似乎比工具栏(我使用`attr/actionBarSize`)的高度小几个dp.这是预期的还是这些视觉故障将被修复? (2认同)