【问题标题】:Notification Bar shows both Large and Small Icons通知栏同时显示大图标和小图标
【发布时间】:2012-06-13 22:58:16
【问题描述】:

我的应用程序中的通知栏仅显示代码中的小图标(应该如此)。但是,当“阴影”被拉下时,它会同时显示代码中的小图标,以及我在 Notification.Builder 中设置的大图标。这是我的代码:

if (Build.VERSION.SDK_INT > 10){
            notification = new Notification(R.drawable.ic_stat_mintchip,
                    "This is a test",
                    System.currentTimeMillis());
            notification.largeIcon = (((BitmapDrawable)c.getResources().getDrawable(R.drawable.ic_launcher)).getBitmap());
            notification.defaults |= Notification.DEFAULT_ALL;
            notification.number += 1;
            notification.flags |= Notification.FLAG_AUTO_CANCEL;

        } else {
            notification = new Notification(R.drawable.ic_stat_mintchip,
                    "This is a test",
                    System.currentTimeMillis());

                notification.flags |= Notification.FLAG_AUTO_CANCEL;
                notification.defaults |= Notification.DEFAULT_ALL;
                notification.number += 1;
        }
}

我不太清楚为什么会这样。有什么帮助吗?

【问题讨论】:

  • 你能把你看到的截图贴在某处吗?
  • 当然,一秒钟...imgur.com/07lxg
  • 我假设你是 MintChip。我不太确定你为什么会得到这种效果。这是什么设备?请注意,虽然您的问题说您使用的是Notification.Builder,但您的代码不是。您可以考虑使用 Android 支持项目中的 NotificationCompat.Builder,看看是否有帮助。

标签: android notifications android-notifications android-notification-bar


【解决方案1】:

我认为这里的问题可能是您没有使用 Notificaiton.Builder 类。这是您可以做的一个小示例(尽管您必须插入自己的变量,并设置您使用的其他属性,例如振动):

Notification.Builder nb = new Notification.Builder(context)
    .setContentTitle("title")
    .setContentText("content")
    .setAutoCancel(true)
    .setLargeIcon(largeIcon)
    .setSmallIcon(R.drawable.small_icon)
    .setTicker(s.getText());
NotificationManager nm = (NotificationManager)context.getSystemService(Context.NOTIFICATION_SERVICE);
nm.notify(100, nb.build());

【讨论】:

  • 我在Android4.04中无法编译'nb.build()',我使用nb.getNotification()代替。
  • 如果我使用股票代码文本,它使用哪个图标?以及如何自定义它并为它使用不同的并为通知本身使用不同的?
  • @androiddeveloper 状态栏显示小图标,打开通知栏时显示大图标。
  • @afollestad 是否可以为代码文本和通知设置不同的图标?
  • 如果我同时设置了小图标和大图标,则使用上面的代码,当用户拉出通知时,通知会同时显示小图标和大图标。使用以下配置运行。 有什么解决方案吗?
【解决方案2】:

我在 android lollipop 中遇到的另一个问题是小图标显示在大图标旁边。要解决它 - 只是不要设置大图标!仅使用小图标设置。

【讨论】:

  • 但我想两者都用。有什么办法吗?
  • 如果你同时设置了两个图标,那么两者都会出现。
【解决方案3】:

http://developer.android.com/guide/topics/manifest/uses-sdk-element.html 如果您将 android manifest 中的 max sdk 版本设置为 19(即 KitKat),您的应用将不再显示用于棒棒糖的通知

【讨论】:

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