我的项目有问题.我不知道如何解决它.这是我第一次遇到它.
/ UncaughtException: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/codes.trongtin.h.besttrip-2/split_lib_dependencies_apk.apk:classes2.dex)
小智 21
您似乎正在使用支持依赖项.只需检查您的应用程序gradle,您的构建工具版本与支持版本相同.
例如:
android {
...
buildToolsVersion "26.0.2"
...
}
Run Code Online (Sandbox Code Playgroud)
和
dependencies {
...
compile 'com.android.support:support-v4:26.0.2'
compile 'com.android.support:appcompat-v7:26.0.2'
compile 'com.android.support:recyclerview-v7:26.0.2'
compile 'com.android.support:support-v13:26.0.2'
...
}
Run Code Online (Sandbox Code Playgroud)
必须具有相同的版本.
它对我有用!
只需更改complieSdkVersion,buildToolsVersion和appCompat依赖项.
compileSdkVersion 27
buildToolsVersion '27.0.0'
implementation 'com.android.support:appcompat-v7:27.0.2'
Run Code Online (Sandbox Code Playgroud)
由于您正在使用支持库,因此请使用 ResourcesCompat
Typeface typeFace= ResourcesCompat.getFont(getActivity(),R.font.roboto);
Run Code Online (Sandbox Code Playgroud)
这将解决您的问题。
如果你想支持 api 级别 26 及以上,你可以使用
Typeface typeface = getResources().getFont(R.font.myfont);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
16048 次 |
| 最近记录: |