RuntimeException:找不到字体资产 optimale_bold.ttf
RuntimeException: Font asset not found optimale_bold.ttf
这是错误行:
Typeface typeface = Typeface.createFromAsset(getAssets(), "optimale_bold.tff");
这是错误日志猫:
Caused by: java.lang.RuntimeException: Font asset not found optimale_bold.tff
at android.graphics.Typeface.createFromAsset(Typeface.java:192)
at com.leontheprofessional.test.whorepresentsyou.activity.MainActivity.onCreate(MainActivity.java:100)
at android.app.Activity.performCreate(Activity.java:6020)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1105)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2284)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2393)
at android.app.ActivityThread.access0(ActivityThread.java:151)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1309)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:135)
at android.app.ActivityThread.main(ActivityThread.java:5351)
at java.lang.reflect.Method.invoke(Native Method)
at java.lang.reflect.Method.invoke(Method.java:372)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:908)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:703)
资产文件夹的结构如下:
在 main
目录中:
|-assets
|--optimale_bold.ttf
|-java
|-res
AndrodMainifest.xml
在AndroidStudio的Android
视图中:
|-app
|--manifest
|--java
|--res
|--assets
|---optimale_bold.tff
仔细查看了app.iml
文件,包含了这么一行:
<option name="ASSETS_FOLDER_RELATIVE_PATH" value="/src/main/assets" />
可能出了什么问题?
PS:
我检查了这个 post,并尝试了所有解决方案。但是 none 有效。这不是重复的 post。请帮助解决问题。
对于那些可能需要的人:
compileSdkVersion 23
buildToolsVersion "23.0.1"
defaultConfig {
applicationId "blahblah"
minSdkVersion 11
targetSdkVersion 23
versionCode 1
versionName "1.0"
}
我认为你有一些拼写错误。您的字体扩展名应该是 .ttf,而不是 .tff
最好在资产中添加字体文件夹,然后使用这一行,
Typeface face1= Typeface.createFromAsset(getAssets(), "fonts/optimale_bold.tff");
还要确保资产文件夹与 java 和 res.
位于同一级别
Typeface face1= Typeface.createFromAsset(getAssets(), "fonts/optimale_bold.ttf");
字体名称:扩展名应该是 ttf
,而不是 tff
emm,我的是因为复制的时候ttf资源坏了,所以重复复制修复
这是错误行:
Typeface typeface = Typeface.createFromAsset(getAssets(), "optimale_bold.tff");
这是错误日志猫:
Caused by: java.lang.RuntimeException: Font asset not found optimale_bold.tff
at android.graphics.Typeface.createFromAsset(Typeface.java:192)
at com.leontheprofessional.test.whorepresentsyou.activity.MainActivity.onCreate(MainActivity.java:100)
at android.app.Activity.performCreate(Activity.java:6020)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1105)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2284)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2393)
at android.app.ActivityThread.access0(ActivityThread.java:151)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1309)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:135)
at android.app.ActivityThread.main(ActivityThread.java:5351)
at java.lang.reflect.Method.invoke(Native Method)
at java.lang.reflect.Method.invoke(Method.java:372)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:908)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:703)
资产文件夹的结构如下:
在 main
目录中:
|-assets
|--optimale_bold.ttf
|-java
|-res
AndrodMainifest.xml
在AndroidStudio的Android
视图中:
|-app
|--manifest
|--java
|--res
|--assets
|---optimale_bold.tff
仔细查看了app.iml
文件,包含了这么一行:
<option name="ASSETS_FOLDER_RELATIVE_PATH" value="/src/main/assets" />
可能出了什么问题?
PS:
我检查了这个 post,并尝试了所有解决方案。但是 none 有效。这不是重复的 post。请帮助解决问题。
对于那些可能需要的人:
compileSdkVersion 23
buildToolsVersion "23.0.1"
defaultConfig {
applicationId "blahblah"
minSdkVersion 11
targetSdkVersion 23
versionCode 1
versionName "1.0"
}
我认为你有一些拼写错误。您的字体扩展名应该是 .ttf,而不是 .tff
最好在资产中添加字体文件夹,然后使用这一行,
Typeface face1= Typeface.createFromAsset(getAssets(), "fonts/optimale_bold.tff");
还要确保资产文件夹与 java 和 res.
位于同一级别Typeface face1= Typeface.createFromAsset(getAssets(), "fonts/optimale_bold.ttf");
字体名称:扩展名应该是 ttf
,而不是 tff
emm,我的是因为复制的时候ttf资源坏了,所以重复复制修复