Actionbar(android.support.v7)填充整个屏幕

时间:2014-01-15 11:13:24

标签: android android-actionbar android-actionbar-compat

我已经为API级别“7-13”和“14及以上”提供了一个自定义主题,不同的style.xml

<style name="CustomTheme" parent="@style/Theme.AppCompat.Light.DarkActionBar">

    <!-- Setting values in the default namespace affects API levels 7-13 -->
    <item name="actionBarStyle">@style/CustomTheme</item>
</style>

<style name="CustomTheme" parent="@style/Theme.AppCompat.Light.DarkActionBar">

    <!-- Setting values in the default namespace affects API levels 7-13 -->
    <item name="background">@color/medium_turquoise</item>
</style>
<style name="CustomTheme" parent="@style/Theme.AppCompat.Light.DarkActionBar">
    <item name="actionBarSize">200dp</item>
</style>

<style name="CustomTheme" parent="@style/Theme.AppCompat.Light.DarkActionBar">
<item name="homeAsUpIndicator">@drawable/back_button_actionbar</item>

我已将我的应用程序的主题设置为“@ style / CustomTheme”,并且在我的活动中我设置了以下内容。

addView = getLayoutInflater().inflate(R.layout.actionbar, null);
getSupportActionBar().setCustomView(addView);
getSupportActionBar().setDisplayOptions(ActionBar.DISPLAY_SHOW_CUSTOM);
getSupportActionBar().setDisplayShowHomeEnabled(true);
getSupportActionBar().setDisplayShowTitleEnabled(false);
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
getSupportActionBar().setHomeButtonEnabled(true);

enter image description here

整个屏幕已被动作栏拍摄,我试图改变高度但没有用。我想我的风格做错了。

由于

1 个答案:

答案 0 :(得分:0)

您的代码对我来说似乎完全没问题。也许Genymotion没有正确渲染它。尝试在sdk中的实际设备或模拟器上运行它。

还有一个建议,如果你在android中制作自定义主题,那么试着避免再次定义相同的样式属性。见下文

<style name="CustomTheme" parent="@style/Theme.AppCompat.Light.DarkActionBar">
    <!-- Setting values in the default namespace affects API levels 7-13 -->
    <item name="actionBarStyle">@style/CustomTheme</item>
    <item name="background">@color/medium_turquoise</item>
    <item name="actionBarSize">200dp</item>
    <item name="homeAsUpIndicator">@drawable/back_button_actionbar</item>
</style>

Screenshot on nexus 5