gpt4 book ai didi

android - Android Studio 中的自定义字体

转载 作者:太空宇宙 更新时间:2023-11-03 13:23:14 31 4
gpt4 key购买 nike

如何在 android studio 中创建自定义字体?我正在尝试使用自定义字体,我读过我想将字体放在 Assets /字体中。我进行了长期而艰苦的搜索,但没有找到任何帮助。我哪里错了?我真的不知道该怎么办。我在下面写下了所有细节。我试过但没有成功。我正在使用 Android Studio,但我似乎没有 Assets 文件夹。所以我创造了一个。但是当我将 Assets 文件夹放在/main/assets 中时,我的应用程序崩溃了。我正在使用此代码加载我的字体。

我知道。 Android Studio 0.5.2 中项目的结构:

root-module
|--.idea
|--app
|----build
|----src
|------main
|--------assets
|----------fonts/SomeFont.ttc
|----------fonts/AnotherFont.otf
|--------java
|----------source code here
|--------res
|------AndroidManifest.xml
|----build.gradle

更新

我的字体文件目录:E:\AndroidProjects\ReadNews\ReadNews\src\main\assets\fonts\

结束更新

我的代码:

 @Override
protected void onPreExecute() {
TextView titleTextView = (TextView) _dialog.findViewById(R.id.title_news_TextView);
TextView messageTextView = (TextView) _dialog.findViewById(R.id.message_TextView);
String fontPath = "fonts/Tahoma.ttf";
Typeface tf = Typeface.createFromAsset(MainActivity.this.getResources().getAssets(), fontPath);
titleTextView.setTypeface(tf);
messageTextView.setTypeface(tf);
}

错误:

06-27 07:40:37.985 4206-4206/com.mmd2009.readnews E/AndroidRuntime﹕ FATAL EXCEPTION: main Process: com.mmd2009.readnews, PID: 4206 java.lang.RuntimeException: native typeface cannot be made at android.graphics.Typeface.(Typeface.java:175) at android.graphics.Typeface.createFromAsset(Typeface.java:149) at com.mmd2009.readnews.MainActivity$ReadNewsAsyncTask.onPreExecute(MainActivity.java:216) at android.os.AsyncTask.executeOnExecutor(AsyncTask.java:587) at android.os.AsyncTask.execute(AsyncTask.java:535) at com.mmd2009.readnews.MainActivity$1.onClick(MainActivity.java:70) at android.view.View.performClick(View.java:4438) at android.view.View$PerformClick.run(View.java:18422) at android.os.Handler.handleCallback(Handler.java:733) at android.os.Handler.dispatchMessage(Handler.java:95) at android.os.Looper.loop(Looper.java:136) at android.app.ActivityThread.main(ActivityThread.java:5017) at java.lang.reflect.Method.invokeNative(Native Method) at java.lang.reflect.Method.invoke(Method.java:515) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:779) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:595) at dalvik.system.NativeStart.main(Native Method)

我的 ReadNews-ReadNews.iml :

  <facet type="android" name="Android">
<configuration>
<option name="SELECTED_BUILD_VARIANT" value="debug" />
<option name="ASSEMBLE_TASK_NAME" value="assembleDebug" />
<option name="COMPILE_JAVA_TASK_NAME" value="compileDebugJava" />
<option name="ASSEMBLE_TEST_TASK_NAME" value="assembleDebugTest" />
<option name="SOURCE_GEN_TASK_NAME" value="generateDebugSources" />
<option name="ALLOW_USER_CONFIGURATION" value="false" />
<option name="MANIFEST_FILE_RELATIVE_PATH" value="/src/main/AndroidManifest.xml" />
<option name="RES_FOLDER_RELATIVE_PATH" value="/src/main/res" />
<option name="RES_FOLDERS_RELATIVE_PATH" value="file://$MODULE_DIR$/src/main/res" />
<option name="ASSETS_FOLDER_RELATIVE_PATH" value="/src/main/assets" />
</configuration>
</facet>

最佳答案

您的字体路径不正确。您没有font文件夹。将您的字体路径更改为 “Tahoma.ttf”,或在您的 Assets 文件夹中创建该文件夹。

编辑

这似乎是 Android 操作系统偶尔会发生的错误。查看此链接,它似乎已被解决。 "Native typeface cannot be made" only for some people

关于android - Android Studio 中的自定义字体,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24451293/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com