无法在Android中解析ContextCompat

时间:2015-07-30 20:05:39

标签: java android

我有一个名为dialog的AlertDialogue对象。我正在尝试添加一个图标。我看到现在不推荐使用这种语法:

dialog.setIcon(getResources().getDrawable(R.drawable.myImage);

我到处都在读这应该有效:

dialog.setIcon(ContextCompat.getDrawable(context, R.drawable.myImage));

但是,Android Studio无法识别ContextCompat语法。有什么东西我应该导入吗?谢谢。

***更新:感谢@Sharj的正确答案如下。如果你们需要一个视觉效果,我也制作了一个快速视频:https://www.youtube.com/watch?v=eFiaO0srQro&feature=youtu.be

4 个答案:

答案 0 :(得分:40)

ContextCompat是支持库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

}

答案 1 :(得分:0)

如果您使用的是Android gradle插件3.0.1,请将google()添加到build.gradle文件(项目级别)中的allProjects存储库,然后同步

像这样:

allprojects {
    repositories {
        google()
        ....
        //other repos
    }
}

答案 2 :(得分:0)

将其添加到依赖项下的build.gradle(Module:App)中可以解决问题

compile 'com.android.support:support-v4:23.0.0'

答案 3 :(得分:0)

androidx.core.content.ContextCompat

来自AndroidX依赖

compile 'androidx.appcompat:appcompat:1.0.0'