【问题标题】:ActionBar ignoring iconActionBar 忽略图标
【发布时间】:2015-03-25 11:09:19
【问题描述】:

我正在慢慢地将我的应用程序迁移到 Android Lollipop,事实上我才刚刚开始这个过程。

但是我已经遇到了一些问题。第一个是我不能让图标再次出现在 ActionBar 中。仅显示应用名称和按钮。

这是我的风格:

<style name="AppTheme" parent="AppTheme.Base"/>

    <style name="AppTheme.Base" parent="Theme.AppCompat.Light">
        <item name="android:windowNoTitle">true</item>
        <item name="windowActionBar">true</item>
        <item name="actionBarStyle">@style/MyApp.Widget.ActionBar.Solid</item>
        <item name="actionBarTabStyle">@style/MyApp.Widget.ActionBarTabStyle</item>
        <item name="actionModeBackground">@drawable/cab_background_top_MyApp</item>
        <item name="actionModeSplitBackground">@drawable/cab_background_bottom_MyApp</item>
        <item name="actionModeCloseButtonStyle">@style/MyApp.Widget.ActionButton.CloseMode</item>
        <item name="actionBarItemBackground">@drawable/selectable_background_MyApp</item>
    </style>

<style name="MyApp.Widget.ActionBar.Solid" parent="@style/Widget.AppCompat.Light.ActionBar.Solid">
        <item name="android:logo">@drawable/ic_launcher</item>
        <item name="background">@drawable/actionbar_background</item>
        <item name="backgroundStacked">@drawable/ab_stacked_solid_MyApp</item>
        <item name="backgroundSplit">@drawable/ab_bottom_solid_MyApp</item>
        <item name="progressBarStyle">@style/MyApp.Widget.ProgressBar</item>
    </style>

这是我的 AndroidManifest:

<application
        android:allowBackup="true"
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:name=".MyApp"
        android:theme="@style/AppTheme" >
<activity
            android:name="com.br.myapp.MainActivity"
            android:label="@string/explore"
            android:launchMode="singleTop"
            android:screenOrientation="portrait" >

        </activity>

</application>

我的活动类正在从 AppCompat 库 v21 扩展 ActionBarActivity。

【问题讨论】:

    标签: android android-actionbar android-5.0-lollipop android-actionbar-compat


    【解决方案1】:

    尝试在主ActivityonCreate 中添加以下两行:

    getSupportActionBar().setDisplayShowHomeEnabled(true);
    getSupportActionBar().setIcon(R.drawable.your_actionbar_icon);
    

    【讨论】:

    • 您确定您的图标大小正确吗? ActionBar 中显示的图标大小必须为 32x32 dp,根据图标指南:developer.android.com/design/style/iconography.html#action-bar
    • 我正在使用相同的启动器图像。使用 AppCompat 21 后显示比以前更大。
    • 这可能只是实现上的差异,因为 Lollipop 的 Material 主题并未设计为在 Toolbar 中显示应用程序图标。根据 Material Design Checklist:“应用栏没有应用图标。颜色和排版用于品牌塑造。”您可以随时尝试调整图像大小,然后查看是否可以解决您的问题。
    猜你喜欢
    • 1970-01-01
    • 2015-03-18
    • 2021-05-16
    • 2013-07-07
    • 1970-01-01
    • 2020-11-02
    • 1970-01-01
    • 2017-06-15
    • 1970-01-01
    相关资源
    最近更新 更多