当前位置: 首页 > 知识库问答 >
问题:

java.lang.没有静态方法getDrawable(Landroid/内容/上下文;I)Landroid/图形/可绘制/可绘制;

邓星光
2023-03-14

我更新了Android Studio到2.2和我的项目将不再构建。我的活动super.on创建(SavedInstanceState)给我一个错误:

java.lang.NoSuchMethodError: No static method getDrawable(Landroid/content/Context;I)Landroid/graphics/drawable/Drawable; in class Landroid/support/v4/content/ContextCompat; or its super classes (declaration of 'android.support.v4.content.ContextCompat' appears in /data/app/x.y.z-1/base.apk:classes32.dex)
                                                                     at android.support.v7.widget.AppCompatDrawableManager.getDrawable(AppCompatDrawableManager.java:197)
                                                                     at android.support.v7.widget.AppCompatDrawableManager.getDrawable(AppCompatDrawableManager.java:185)
                                                                     at android.support.v7.widget.AppCompatDrawableManager.checkVectorDrawableSetup(AppCompatDrawableManager.java:720)
                                                                     at android.support.v7.widget.AppCompatDrawableManager.getDrawable(AppCompatDrawableManager.java:190)
                                                                     at android.support.v7.widget.TintTypedArray.getDrawableIfKnown(TintTypedArray.java:77)
                                                                     at android.support.v7.app.AppCompatDelegateImplBase.<init>(AppCompatDelegateImplBase.java:127)
                                                                     at android.support.v7.app.AppCompatDelegateImplV9.<init>(AppCompatDelegateImplV9.java:147)
                                                                     at android.support.v7.app.AppCompatDelegateImplV11.<init>(AppCompatDelegateImplV11.java:27)
                                                                     at android.support.v7.app.AppCompatDelegateImplV14.<init>(AppCompatDelegateImplV14.java:50)
                                                                     at android.support.v7.app.AppCompatDelegateImplV23.<init>(AppCompatDelegateImplV23.java:29)
                                                                     at android.support.v7.app.AppCompatDelegate.create(AppCompatDelegate.java:199)
                                                                     at android.support.v7.app.AppCompatDelegate.create(AppCompatDelegate.java:181)
                                                                     at android.support.v7.app.AppCompatActivity.getDelegate(AppCompatActivity.java:521)
                                                                     at android.support.v7.app.AppCompatActivity.onCreate(AppCompatActivity.java:71)
                                                                     at zz.yyy.xxx.activities.AsdActivity.onCreate(AsdActivity.java:12)
                                                                     at android.app.Activity.performCreate(Activity.java:6904)
                                                                     at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1136)
                                                                     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3266)
                                                                     at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3415)
                                                                     at android.app.ActivityThread.access$1100(ActivityThread.java:229)
                                                                     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1821)
                                                                     at android.os.Handler.dispatchMessage(Handler.java:102)
                                                                     at android.os.Looper.loop(Looper.java:148)
                                                                     at android.app.ActivityThread.main(ActivityThread.java:7325)
                                                                     at java.lang.reflect.Method.invoke(Native Method)
                                                                     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1230)
                                                                     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1120)

我做了一个全新的活动,看看是不是我的代码导致了这个问题,但没有帮助。活动内容如下:

import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;

public class AsdActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_asd);
    }
}

这是我的身材。格雷德尔(应用程序)

buildscript {
    repositories {
        maven { url 'https://maven.fabric.io/public' }
    }

    dependencies {
        classpath 'io.fabric.tools:gradle:1.+'

    }
}
apply plugin: 'com.android.application'
apply plugin: 'io.fabric'

repositories {
    maven { url 'https://maven.fabric.io/public' }
}

android {
    compileSdkVersion 24
    buildToolsVersion "23.0.3"

        defaultConfig {
           minSdkVersion 21
           targetSdkVersion 24
           ...
        }

    buildTypes {

        debug {
            ...
            minifyEnabled false
        }

        release {
            ...
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }

}

dependencies {
    compile fileTree(include: ['*.jar'], dir: 'libs')
    testCompile 'junit:junit:4.12'
    compile('com.crashlytics.sdk.android:crashlytics:2.5.5@aar') {
        transitive = true;
    }

    compile project(':ViewLib')
    compile files('libs/commons-io-2.5.jar')
    compile project(':GridHeaders')
    compile 'com.amazonaws:aws-android-sdk-s3:2.2.16'
    compile 'com.google.code.gson:gson:2.6.2'
    compile 'com.squareup.okhttp3:okhttp:3.2.0'
    compile 'com.github.franmontiel:PersistentCookieJar:v0.9.3'
    compile 'com.amazonaws:aws-android-sdk-mobileanalytics:2.2.9'
    compile('com.facebook.fresco:fresco:0.11.0') {
        exclude module: 'support-v4'
    }
    compile 'org.apache:pdfbox-android:1.8.9.0'
    compile 'com.android.support:appcompat-v7:24.2.1'
    compile 'com.android.support:design:24.2.1'
}

在此错误之前,我得到了这个:java.lang.NoSuchMultiodError:没有静态方法setOnApplyWindowInsetsListener

在那之前,我又犯了一个类似的错误。通过更新我的支持库,这两个问题都得到了解决。现在我得到了最新(24.2.1)版本的appcompatv7和设计库,所以我不知道我还能做什么。

共有1个答案

穆丁雨
2023-03-14

我能够解决这个问题。在我的/libs文件夹下,我有一个旧的android-support-v13。用gradle编译的jar。我的应用程序尝试使用此的ContextCompat类。jar和类没有静态getDrawable(Context)方法。移除这个。jar解决了我的问题。

 类似资料:
  • 我运行Android emulator并在此行“cameraProviderFuture=ProcessCameraProvider.getInstance(requireResponsibility())”处崩溃。为什么? logcat错误:java.lang.NoSuchMultiodError:没有静态方法getOrCreateInstance(Landroid/Content/Contex

  • 问题内容: 这是我的问题…: 在我的活动中,我有一个和一个。我希望Button仅在显示某个可绘制对象时才执行操作。是的,这意味着该代码正在各种可绘制对象之间进行动画处理,从而使其不会中断我想要完成的工作。 没用 并且我将其范围缩小到“ if(vari(drawabledrawable == acertaindrawable)”行的错误。尽管Eclipse并没有公然报告两个可绘制对象是否相同的And

  • 问题内容: 关闭。 此问题不符合堆栈溢出准则。它当前不接受答案。 想改善这个问题吗? 更新问题,使其成为Stack Overflow 的主题。 6年前关闭。 改善这个问题 我想用Java绘制图形(节点和边)。但是,由于我不知道该怎么做,因此在开始之前我想寻求一些建议。 我应该怎么做? 使用Graphics2D包,对吗? 节点的标签怎么样?我应该使用诸如drawString之类的东西并手动处理所有“

  • 问题内容: 我正在尝试将一些简单的图形绘制到框架上。我还希望能够从主要方法中调整要绘制的内容。例如,设置要打印的String变量或矩形的坐标。 我似乎遇到的问题是,可以在设置类变量之前调用该方法。如何在绘制到屏幕之前更改此代码以设置/ 变量? 谢谢 问题答案: 从FrameTest类中删除test_string。使用set方法直接设置test_string。参见示例:

  • 1.每当我在我的应用中刷下一张图片时,应用崩溃了,我不知道出了什么问题 noSuchMethodError:类landroid/util/sparsearray中没有包含(I)Z的虚拟方法;或其超类(“android.util.sparsearray”的声明出现在/system/framework/framework.jar!classes2.dex中) 此行应用程序崩溃

  • 本文向大家介绍C#正方形图片的绘制方法,包括了C#正方形图片的绘制方法的使用技巧和注意事项,需要的朋友参考一下 本文实例为大家分享了C#绘制正方形图片的的具体代码,供大家参考,具体内容如下 以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持呐喊教程。