问题描述
我有一个名为 dialog 的 AlertDialogue 对象。 我正在尝试为其添加一个图标。 我看到现在不推荐使用此语法:
dialog.setIcon(getResources().getDrawable(R.drawable.myImage);
我到处都在阅读这应该有效:
dialog.setIcon(ContextCompat.getDrawable(context, R.drawable.myImage));
但是,Android Studio 无法识别 ContextCompat 语法。 有什么我应该导入的吗? 谢谢你。
***更新:感谢@Sharj 在下面提供正确答案。 如果你们需要视觉效果,我也制作了一个快速视频: :
1楼
是支持库 v4 的一部分。 您是否在项目中添加了支持库 4?
android.support.v4.content.ContextCompat
如果您还没有,您可以在 app 文件夹下的 build.gradle 文件中包含支持库
dependencies {
// other stuff here
compile 'com.android.support:support-v4:23.0.0'
// update the 23.0.0 to latest version available
}
2楼
androidx.core.content.ContextCompat
来自 AndroidX 依赖
implementation 'androidx.appcompat:appcompat:1.1.0'
3楼
我有同样的问题,这个和更多的帖子帮助了我。 使用 Android Studio,您可以拥有多个 Gradle 文件。
我通过将依赖项部分添加到 Gradle(模块:库)或具有“android {”...
dependencies {
// other stuff here
compile 'com.android.support:support-v4:23.+'
// update the 23.0.0 to latest version available
}
4楼
如果您使用的是 Android gradle 插件 3.0.1,请将 google() 添加到 build.gradle 文件(项目级别)中的 allProjects 存储库,然后同步
像这样:
allprojects {
repositories {
google()
....
//other repos
}
}
5楼
将此添加到依赖项下的 build.gradle(Module:App) 解决了问题
compile 'com.android.support:support-v4:23.0.0'