【问题标题】:java.lang.NoSuchMethodError: No static method getFontjava.lang.NoSuchMethodError:没有静态方法getFont
【发布时间】:2018-05-20 06:33:59
【问题描述】:

我正在使用 ChrisJenx 的 Calligraphy Library。今天早上突然我的项目开始抛出奇怪的错误。有人对此有任何想法吗?我还尝试查看 TintTypedArray.java:119。 gradle 缓存中的一个具有 getFont 方法,即 v26.0.2,但在 sdk/extras 中没有 v25.3.1。我认为 gradle 缓存代码将用于此,但它仍然抛出错误。请帮忙。

Logcat:

12-06 16:52:40.516 18533-18533/com.nabta E/AndroidRuntime: 致命 例外:主要 进程:com.nabta,PID:18533 java.lang.NoSuchMethodError:没有静态方法 getFont(Landroid/content/Context;ILandroid/util/TypedValue;ILandroid/widget/TextView;)Landroid/graphics/Typeface; 在 Landroid/support/v4/content/res/ResourcesCompat 类中;或其超级 类(声明 'android.support.v4.content.res.ResourcesCompat' 出现在 /data/app/com.nabta-2/base.apk:classes13.dex) 在 android.support.v7.widget.TintTypedArray.getFont(TintTypedArray.java:119) 在 android.support.v7.widget.AppCompatTextHelper.updateTypefaceAndStyle(AppCompatTextHelper.java:208) 在 android.support.v7.widget.AppCompatTextHelper.loadFromAttributes(AppCompatTextHelper.java:110) 在 android.support.v7.widget.AppCompatTextHelperV17.loadFromAttributes(AppCompatTextHelperV17.java:38) 在 android.support.v7.widget.AppCompatTextView.(AppCompatTextView.java:81) 在 android.support.v7.widget.AppCompatTextView.(AppCompatTextView.java:71) 在 android.support.v7.app.AppCompatViewInflater.createView(AppCompatViewInflater.java:103) 在 android.support.v7.app.AppCompatDelegateImplV9.createView(AppCompatDelegateImplV9.java:1024) 在 android.support.v7.app.AppCompatDelegateImplV9.onCreateView(AppCompatDelegateImplV9.java:1081) 在 uk.co.chrisjenx.calligraphy.CalligraphyLayoutInflater$WrapperFactory2.onCreateView(CalligraphyLayoutInflater.java:280) 在 android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:776) 在 android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:734) 在 android.view.LayoutInflater.rInflate(LayoutInflater.java:865) 在 android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:828) 在 android.view.LayoutInflater.rInflate(LayoutInflater.java:873) 在 android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:828) 在 android.view.LayoutInflater.inflate(LayoutInflater.java:525) 在 uk.co.chrisjenx.calligraphy.CalligraphyLayoutInflater.inflate(CalligraphyLayoutInflater.java:60) 在 android.view.LayoutInflater.inflate(LayoutInflater.java:427) 在 android.view.LayoutInflater.inflate(LayoutInflater.java:378) 在 android.support.v7.app.AppCompatDelegateImplV9.setContentView(AppCompatDelegateImplV9.java:287) 在 android.support.v7.app.AppCompatActivity.setContentView(AppCompatActivity.java:139) 在 com.nabta.activity.MainActivity.onCreate(MainActivity.java:47) 在 android.app.Activity.performCreate(Activity.java:6977) 在 android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1126) 在 android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2946) 在 android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3064) 在 android.app.ActivityThread.-wrap14(ActivityThread.java) 在 android.app.ActivityThread$H.handleMessage(ActivityThread.java:1659) 在 android.os.Handler.dispatchMessage(Handler.java:102) 在 android.os.Looper.loop(Looper.java:154) 在 android.app.ActivityThread.main(ActivityThread.java:6816) 在 java.lang.reflect.Method.invoke(本机方法) 在 com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1563) 在 com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1451)

【问题讨论】:

标签: android textview android-support-library calligraphy


【解决方案1】:

我解决了这个错误。运行工作室 3.0.0 后,我遇到了这个错误。按照这里的建议升级构建工具版本解决了它:https://stackoverflow.com/a/47126127/3484668

【讨论】:

    【解决方案2】:

    就我而言,我在 Kotlin 项目中使用了 Android-KTX: implementation 'androidx.core:core-ktx:0.1',这就是错误的原因。我刚刚将它作为依赖项从 build.gradle 中删除。

    P.S 与我的帖子相同的答案: java.lang.NoSuchMethodError: No static method getFont(Landroid/content/Context;ILandroid/util/TypedValue;ILandroid/widget/TextView;)

    【讨论】:

      【解决方案3】:

      更新构建 gradle 对我有用。

      compileSdkVersion 27
      
      targetSdkVersion 27
      
      dependencies {
          implementation fileTree(dir: 'libs', include: ['*.jar'])
          implementation 'com.android.support:appcompat-v7:27.0.0'
          implementation 'com.android.support.constraint:constraint-layout:1.1.2'
          implementation 'com.android.support:recyclerview-v7:27.0.0'
          implementation 'com.android.support:cardview-v7:27.0.0'
      }
      

      【讨论】:

        猜你喜欢
        • 2018-04-17
        • 1970-01-01
        • 2018-09-21
        • 2016-12-27
        • 1970-01-01
        • 2018-06-24
        • 1970-01-01
        • 2019-09-05
        相关资源
        最近更新 更多