从Application Class获取Resource的int值

时间:2016-07-18 09:59:47

标签: java android android-resources

我正在设置一个通知类,它需要独立于任何Activity,但是通过我的主Application类调用。我无法访问资源。

Application类通过function checkHELLO() { if ($("type1").is(':checked')) { } else { return false; } }获取其上下文,并将其传递给我的通知类的构造函数:

context.getApplicationContext()

我需要在Drawables中设置小图标,当我添加NotificationService notificationService = new NotificationService(context, notifications); 资源时,编译器无法找到它:

R.drawable.tv_logo_notext_bw

显然,它需要一个上下文,但是上下文被传递给我的通知类和NotificationCompat.Builder builder = new NotificationCompat.Builder(context); builder.setSmallIcon(R.drawable.tv_logo_notext_bw); 类的构造函数,所以我不明白为什么编译器看不到drawable。

我错过了一些关键步骤吗?

1 个答案:

答案 0 :(得分:2)

资源ID是公开的静态文件,由Gradle& amp; amp; amp; IDE,这意味着您应该能够从项目的任何部分调用, 你的代码看起来很好。

尝试下一步"刷新"您的IDE(Android Studio)

1.尝试重建项目构建|重建
2.同时尝试Choose File | Invalidate Caches/Restart.