操作栏左端的额外填充(更新 sdk 后)
Extra padding at the left end of action bar (after updated sdk)
我不知道这个填充是怎么来的,但是在我将我的 SDK 更新到 21 之前没有这样的填充。
这是我的代码:
mActionBar = getSupportActionBar();
mActionBar.setDisplayShowHomeEnabled(false);
mActionBar.setDisplayShowTitleEnabled(false);
actionBarView = LayoutInflater.from(this).inflate(R.layout.title_bar_layout, null);
mActionBar.setCustomView(actionBarView, new LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT));
mActionBar.setDisplayShowCustomEnabled(true);
有谁知道如何解决这个问题?谢谢。
编辑:
自上次更新支持库 22.1.x
以来,如果您不使用 ToolBar
,则属性必须是 ActionBar 样式的一部分。例如
<style name="MyStyle" parent="Widget.AppCompat.Light.ActionBar.Solid.Inverse">
<item name="contentInsetStart">0dp</item>
<item name="contentInsetEnd">0dp</item>
<item tools:ignore="NewApi" name="android:contentInsetStart">0dp</item>
<item tools:ignore="NewApi" name="android:contentInsetEnd">0dp</item>
</style>
并被 <item name="android:actionBarStyle"
引用
旧答案
删除额外的填充添加
<style name="AppThemeToolbar" parent="Widget.AppCompat.Toolbar">
<item name="contentInsetStart">0dp</item>
<item tools:ignore="NewApi" name="android:contentInsetStart">0dp</item>
</style>
到您的 style.xml 文件。并从您的应用主题中引用它:
<item name="android:toolbarStyle" tools:ignore="NewApi">@style/AppThemeToolbar</item>
<item name="toolbarStyle">@style/AppThemeToolbar</item>
mActionBar = getSupportActionBar();
mActionBar.setDisplayShowHomeEnabled(false);
mActionBar.setDisplayShowTitleEnabled(false);
actionBarView = LayoutInflater.from(this).inflate(R.layout.title_bar_layout, null);
mActionBar.setCustomView(actionBarView, new LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT));
mActionBar.setDisplayShowCustomEnabled(true);
有谁知道如何解决这个问题?谢谢。
编辑:
自上次更新支持库 22.1.x
以来,如果您不使用 ToolBar
,则属性必须是 ActionBar 样式的一部分。例如
<style name="MyStyle" parent="Widget.AppCompat.Light.ActionBar.Solid.Inverse">
<item name="contentInsetStart">0dp</item>
<item name="contentInsetEnd">0dp</item>
<item tools:ignore="NewApi" name="android:contentInsetStart">0dp</item>
<item tools:ignore="NewApi" name="android:contentInsetEnd">0dp</item>
</style>
并被 <item name="android:actionBarStyle"
旧答案
删除额外的填充添加
<style name="AppThemeToolbar" parent="Widget.AppCompat.Toolbar">
<item name="contentInsetStart">0dp</item>
<item tools:ignore="NewApi" name="android:contentInsetStart">0dp</item>
</style>
到您的 style.xml 文件。并从您的应用主题中引用它:
<item name="android:toolbarStyle" tools:ignore="NewApi">@style/AppThemeToolbar</item>
<item name="toolbarStyle">@style/AppThemeToolbar</item>