当操作栏狭窄时,如何通知我的自定义ActionView / ActionProvider?

时间:2012-12-28 03:00:57

标签: android android-actionbar shareactionprovider

我实施了自定义ActionProvider ,与ShareActionProvider不同。但是它有点宽,因为我包含了ShareActionProvider中没有的文本标签。

我注意到,在纵向配置中,常规操作项(SHOW_AS_ACTION_IF_ROOMSHOW_AS_ACTION_WITH_TEXT)显示为仅图标,并且在横向配置中显示标签配置在我的Galaxy Nexus手机的操作栏中。我认为在不同的配置中,这种情况可能会有所不同。 我自定义添加标签的意图是相同的。

如果我的ActionProvider,更具体地说,我的ActivityChooserView等同于 ,我该怎样检查代码?什么样的面向未来的方法可以获得可能主要在ActionMenuPresenter中的知识?我可以采取任何安全捷径,例如只检查肖像或风景吗?或者可以以某种方式通知它?


作为红利问题SHOW_AS_ACTION_IF_ROOM似乎基于行动项目的数量,而不是其宽度。由于任何ActionProvider视图已经非常宽,因此不会为标题留下空间,但是其他操作项(带有SHOW_AS_ACTION_IF_ROOM)不会移动到溢出菜单。即使在某些设备上,我的自定义ActionProvider也会稍微大于宽度的50%,但我认为这是ActionMenuPresenter中的规则?我怎样才能更好地,但仍然是动态的,控制它(在高水平)?

1 个答案:

答案 0 :(得分:0)

嗯,好像我可以在mAllowTextWithIcon中使用ActionMenuItemView(https://github.com/android/platform_frameworks_base/blob/master/core/java/com/android/internal/ view / menu / ActionMenuItemView.java)并复制AOSP的配置资源结构。