【问题标题】:Assets folder in Android Studio?Android Studio中的资产文件夹?
【发布时间】:2013-10-14 02:04:39
【问题描述】:

我正在尝试使用自定义字体,并且我读过我想将字体放在 assets/fonts.xml 中。我正在使用 Android Studio,但我似乎没有资产文件夹。所以我创造了一个。但是当我将 assets 文件夹放在 src/main 中时,我的应用程序崩溃了。我使用此代码加载我的字体。

Typeface fontRegular = Typeface.createFromAsset(getAssets(), "fonts/DroidSans.ttf");
Typeface fontBold = Typeface.createFromAsset(getAssets(), "fonts/DroidSans-Bold.ttf");

myDeviceModelTxt.setTypeface(fontRegular);

我做错了什么?

【问题讨论】:

标签: android android-studio typeface custom-font


【解决方案1】:

创建资产文件夹右键单击应用程序->>新建->>文件夹->>资产文件夹,如下图所示

只需复制和粘贴即可将您的字体放入此文件夹中。并使用下面的代码例如..

Typeface tf = Typeface.createFromAsset(getContext().getAssets(), "YourFontName.ttf");
setTypeface(tf);

【讨论】:

    【解决方案2】:

    只需按照以下路径:

    File > New > folder > assets Folder
    

    在创建文件夹之前必须选择应用程序。

    欲了解更多信息,请参阅this answer

    【讨论】:

      【解决方案3】:

      我不确定自从被问到是否有任何错误修复,但我正在使用 Android Studio 0.5.2 中的项目的当前结构:

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

      然后通过调用获取

      Typeface.createFromAsset(mContext.getResources().getAssets(), "SomeFont.ttc");
      

      但请注意,有一个错误 (https://code.google.com/p/android/issues/detail?id=9904) 会阻止正确地对字体进行垃圾收集。使用单例!

      【讨论】:

        【解决方案4】:

        assets 文件夹应该放在项目的根目录下。 有关更多示例,请参阅here

        【讨论】:

        • 很奇怪。我需要检查这些东西。 Google 增强了 getAssets 以在根目录和 src/main 下进行搜索,或者您提供的帖子缺少某些内容。我会检查并更新。
        • @LiorOhana 该帖子似乎指的是 Eclipse,而不是 Android Studio
        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2014-12-29
        • 1970-01-01
        • 1970-01-01
        • 2014-05-09
        • 2017-12-05
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多