Android - 如何从自定义Actionbar中移除顶部和底部的边距

3

我正在为我的应用程序使用自定义操作栏,以下是代码:

actionBar.setDisplayShowCustomEnabled(true);
    getSupportActionBar().setDisplayShowCustomEnabled(true);
    actionBar.setDisplayShowTitleEnabled(false);
    actionBar.setDisplayHomeAsUpEnabled(false);
    actionBar.setDisplayUseLogoEnabled(false);
    actionBar.setDisplayShowHomeEnabled(false);
    actionBar.setHomeButtonEnabled(false);
    actionBar.setIcon(null);
    actionBar.setCustomView(mCustomView);
    Toolbar parent =(Toolbar) mCustomView.getParent();
    parent.setContentInsetsAbsolute(0, 0);

这是代码的结果,我在顶部和底部留有边距:

enter image description here

如何去掉这个边距?

我正在使用Theme.AppCompat.Light作为我的应用程序模板。


1
你能提供你自定义ActionBar的XML以及该Activity的XML吗? - Emil
2个回答

1
建议将工具栏布局的xml放在单独的文件中:
<android.support.v7.widget.Toolbar xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:id="@+id/actionBar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:contentInsetEnd="0dp"
app:contentInsetStart="0dp" >

然后将它包含在您的 main.xml 中。
<include layout="@layout/view_action_bar" />

同样要确保: app:contentInsetStart="0dp" 这是你间距的主要问题。

0
在你的ActionBar布局文件中,将Parent View的android:height设置为match parent。我之前也遇到了同样的问题。

我已经将match_parent设置为父视图,但它不起作用。 - navidjons
@navidjons,您能否尝试通过将android:height设置为match_parent并为父元素设置一些最小高度来进行检查? - Sachin Kottary

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接