java从应用程序类获取资源的int值
我正在设置一个通知类,该类需要独立于任何活动,但通过我的主应用程序类调用。我无法访问资源
应用程序类通过context.getApplicationContext()
获取其上下文,并将其传递给我的通知类的构造函数:
NotificationService notificationService = new NotificationService(context, notifications);
我需要从我的Drawables中设置小图标,当我添加R.drawable.tv_logo_notext_bw
资源时,编译器无法找到它:
NotificationCompat.Builder builder = new NotificationCompat.Builder(context);
builder.setSmallIcon(R.drawable.tv_logo_notext_bw);
显然,它需要一个上下文,但是上下文被传递给了我的通知类和NotificationCompatBuilder
类的构造函数,所以我不明白为什么编译器不能看到可绘制的
我是否错过了关键的一步
# 1 楼答案
资源Id是公共静态字段,由Gradle&;自动生成;IDE,这意味着您应该能够从项目的任何部分调用, 你的代码看起来不错
尝试下一步“刷新”IDE(Android Studio)
1.尝试重建项目Build | rebuild
2.也可以试试Choose File | Invalidate Caches/Restart.