【发布时间】:2015-08-13 07:59:47
【问题描述】:
我想在我的应用程序中使用自定义字体,并且我所做的一切都是正确的,但是当我构建项目并运行它时,它是 force stop,因为它找不到 assets 文件夹!
这是来自MainActivity的代码:
tv = (TextView) findViewById(R.id.wlcText);
tf = Typeface.createFromAsset(getAssets(), "en_font.ttf");
tv.setTypeface(tf);
这是异常跟踪:
Caused by: java.lang.RuntimeException: Font asset not found en_font.ttf
at android.graphics.Typeface.createFromAsset(Typeface.java:198)
我在正确的路径中有assets 文件夹,如image
我也尝试在编译后浏览我的apk,但我没有找到像image那样的assets文件夹!
这意味着 Android studio 看不到项目结构中的文件夹!
附:我在这里尝试了很多问题,但对我没有任何帮助!
编辑
这是带有 sourceSets 的 build.gradle:
apply plugin: 'com.android.application'
android {
compileSdkVersion 22
buildToolsVersion '21.1.2'
defaultConfig {
applicationId "com.mEmoZz.qrgen"
minSdkVersion 10
targetSdkVersion 21
versionCode 1
versionName "1.0"
}
buildTypes {
release {
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
sourceSets {
main {
assets.srcDirs = ['assets']
}
}
}
【问题讨论】:
-
这看起来很奇怪。您在该模块的
build.gradle文件中有sourcesets闭包吗?如果是,请编辑您的问题并发布该文件。 -
你的字体文件是在assets文件夹里面还是在assets文件夹的fonts文件夹里面?
-
@CommonsWare 我编辑了它。
-
@BidhanA 在资产文件夹本身中,我也尝试将其放入
/assets/fonts/和相同的异常
标签: android android-studio android-assets