从标准java类设置通知栏图标

时间:2012-06-24 19:16:54

标签: android notifications icons

我目前正在开发一个android项目,我正在尝试从标准java类(而不是活动类)创建通知。

我在一个名为icon.png的drawable文件夹中添加了一个图标但是当我尝试使用R.drawable.icon图标将图标设置为int时,从不显示默认的内置android图标。

我不明白为什么它没有显示我自己的图标。

感谢您提供的任何帮助。

更新 如下所述,是设置通知的代码

private void showNotification(String username, String password)
{
    String ns = Context.NOTIFICATION_SERVICE;
    NotificationManager notificationManager = (NotificationManager)context.getSystemService(ns);

    CharSequence tickerText = "Username Copied";
    long when = System.currentTimeMillis();

    int icon = 0;

    Notification notification = new Notification(icon, tickerText, when);
    CharSequence contentTitle = "BPM - Login Management";
    CharSequence contentText = "Username Copied";

    Intent intentNotification = new Intent();
    intentNotification.setAction(Long.toString(when));
    notification.flags |= Notification.FLAG_AUTO_CANCEL;

    PendingIntent contentIntent = PendingIntent.getActivity(context, 0, intentNotification, PendingIntent.FLAG_UPDATE_CURRENT);
    notification.setLatestEventInfo(context, contentTitle, contentText, contentIntent);

    final int NOTIFICATION_ID = 1;
    notificationManager.notify(NOTIFICATION_ID, notification);
}

我只设置icon = 0只是为了阻止它给我错误。我知道我需要在某种程度上使用R.drawable来获取实际的图标ID。只是不确定为什么这不起作用

2 个答案:

答案 0 :(得分:2)

检查您的进口。

您要导入COM.YOURAPP.R,而不是android.R

答案 1 :(得分:0)

我不知道为什么我不能对这个问题添加评论。无论如何,你厌倦了点击项目菜单然后点击清洁..?然后打开R.java文件,看看你的图标是否列在那里? 试试这个:

 int icon = R.drawable.icon;

而不是

int icon =0;