【问题标题】:App Icon doesnt show up in Actionbar (Android Studio 1.0.1)应用程序图标未显示在操作栏中(Android Studio 1.0.1)
【发布时间】:2014-12-28 21:04:17
【问题描述】:

所以我对 android 开发还很陌生,我只是无法在操作栏中显示任何图标。

我创建了一个最低 sdk API 15 的新项目,并在 Theme-Dropdown (XML-Design-View) 中选择“Holo.Light”。

所以我希望它看起来像这样: http://i.stack.imgur.com/zfgCq.png

但它看起来像这样: http://i.imgur.com/Lmxutct.png

我的 AndroidManifest.xml:

<?xml version="1.0" encoding="utf-8"?>

<application
    android:allowBackup="true"
    android:icon="@drawable/ic_launcher"
    android:label="@string/app_name"
    android:theme="@style/AppTheme" >
    <activity
        android:name=".MainActivity"
        android:label="@string/app_name" >
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
</application>

我想我必须以某种方式将 android:theme 更改为 Holo.Light?但是没有定义资源,我似乎无法添加任何资源..

我的样式.xml:

<resources>

<!-- Base application theme. -->
<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar"/>
    <!-- Customize your theme here. -->

ic_launcher.png 位于 drawables 文件夹中.. 那么我该怎么做才能让那个该死的图标显示出来呢?

(顺便说一句,我使用我的 HTC 一台 M8,但它也没有出现在模拟器上)

谢谢!

【问题讨论】:

    标签: android xml icons themes


    【解决方案1】:

    要在 ActionBar 上显示图标,您必须添加:

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

    onCreate 方法中。

    【讨论】:

    • 谢谢,解决了!对不起,如果这是一个愚蠢的问题..但是你在哪里学习这样的东西?我目前正在阅读官方的 android dev 初学者教程,但没有提到这一点..
    • 没那么傻,我从初学者教程开始,你可以提高你的android开发知识,例如像udacity.com/course/ud853这样的课程。如果您愿意,可以将答案标记为正确。
    • 在 Android Studio 1.4 上,应用程序图标资源(使用向导 New -> Image Asset -> Asset type: Laucher Icons)转到 res/mipmap 而不是 res/drawable。也就是说,代码可能是:getSupportActionBar().setDisplayShowHomeEnabled(true); getSupportActionBar().setIcon(R.mipmap.ic_launcher);
    【解决方案2】:

    我用这段代码解决的另一种方法

    ActionBar actionBar = getSupportActionBar();
    actionBar.setLogo(R.drawable.ic_launcher);
    actionBar.setDisplayUseLogoEnabled(true);
    actionBar.setDisplayShowHomeEnabled(true);
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-01-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-01-14
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多