【发布时间】:2013-12-14 21:39:53
【问题描述】:
我想让我所有的菜单图标可见,因此我把 android:showAsAction="ifRoom" 并从 MainActivity 中删除 App 标题。
但仍然没有显示所有图标,而是应用程序图标和菜单图标之间存在很大差距,如下所示。当我单击菜单按钮(ifRoom 的属性)时,会显示其余图标。那么,您能告诉我如何消除应用图标和菜单图标之间的巨大差距吗?
谢谢
【问题讨论】:
标签: android
我想让我所有的菜单图标可见,因此我把 android:showAsAction="ifRoom" 并从 MainActivity 中删除 App 标题。
但仍然没有显示所有图标,而是应用程序图标和菜单图标之间存在很大差距,如下所示。当我单击菜单按钮(ifRoom 的属性)时,会显示其余图标。那么,您能告诉我如何消除应用图标和菜单图标之间的巨大差距吗?
谢谢
【问题讨论】:
标签: android
有限制,如per the guidelines:
主操作栏中可以容纳多少操作?操作栏容量由以下规则控制:
主操作栏中的操作按钮不得超过该栏宽度的 50%。底部操作栏上的操作按钮可以使用整个宽度。 与密度无关的像素 (dp) 中的屏幕宽度决定了适合主操作栏的项目数: 小于 360 dp = 2 个图标 360-499 dp = 3 个图标 500-599 dp = 4 个图标 600 dp 及更大 = 5 个图标
您不能用图标填充整个操作栏。
【讨论】:
我不确定是否理解您的问题。但是您说了两件事,一是您要显示ActionBar 中的所有图标,二是您要删除图标和选项菜单之间的“空白”空间。
也许我错了,所以请你澄清你的问题。
对于第一个问题(显示 AB 中的所有图标),您不能这样做。但解决方案可能会在您的ActionBar 中创建一个CustomView。
actionBar.setCustomView(R.layout.myactionbarview); actionBar.setDisplayOptions(ActionBar.DISPLAY_SHOW_CUSTOM) 要在项目点击上创建一个动作,你可以这样调用你的视图:
MyIcon = (ImageView) actionBar.getCustomView().findViewById(R.id.myidicon);
MyIcon.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// do what you want
}
});
希望这会有所帮助。
【讨论】: