我有一个带有拆分操作栏的应用程序,该应用程序加载了操作菜单。
我更改了新工具栏的操作栏,并用独立模式下使用的其他工具栏替换了拆分操作栏:
Toolbar toolbarBottom = (Toolbar) findViewById(R.id.toolbarBottom);
toolbarBottom.inflateMenu(R.menu.ab_one_cam);
根据文档中的说明,操作菜单固定在工具栏的右侧:
但是我希望图标位于工具栏的中央,就像它位于拆分操作栏上一样:
如何使操作菜单占用工具栏上的所有可用空间?
工具栏专用于此菜单,将不会添加任何其他内容。
回答
接受的答案的链接指向一个拆分工具栏。如果像我一样,您非常需要此代码就足够了:
public class SplitToolbar extends Toolbar {
public SplitToolbar(Context context) {
super(context);
}
public SplitToolbar(Context context, AttributeSet attrs) {
super(context, attrs);
}
public SplitToolbar(Context context, AttributeSet attrs, int defStyleAttr) {
super(context, attrs, defStyleAttr);
}
@Override
public void addView(View child, ViewGroup.LayoutParams params) {
if (child instanceof ActionMenuView) {
params.width = LayoutParams.MATCH_PARENT;
}
super.addView(child, params);
}
}
在这种情况下,Chris Banes建议使用ActionMenuView而不是Toolbar(请参阅下面的链接,回复#6)。除此之外,在此链接中,您可以找到一个解决方案,其中小伙子将工具栏子类化以使拆分正确进行。
https://code.google.com/p/android/issues/detail?id=77632#c2
希望对您有帮助!
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句