我试图在Android Studio中使用自定义字体,就像我们在Eclipse中所做的那样。但不幸的是,不知道在哪里放“资产”文件夹!


当前回答

对于新读者

你可以使用这个库 Gloxey定制字体视图

gradle依赖

  dependencies{
           compile 'io.gloxey.cfv:custom-font-views:1.0.2'
    }

如何使用?

创建文件夹资产->字体。复制你的字体到字体文件夹。

使用属性app: font_name = "font_name_string"在视图上应用字体。

例子

   <!--Font Names in srings.xml-->
       <string name="aadhunik">aadhunik.ttf</string>
       <string name="kung_fool">kungfool.ttf</string>
       <string name="skrova">skrova.otf</string>
       <string name="painting_in_the_sun_light">painting_in_the_sun_light.ttf</string>

   <!--Include views in layout.xml-->
       <io.gloxey.cfv.CFTextView
       android:layout_width="match_parent"
       android:layout_height="wrap_content"
       android:gravity="center"
       android:text="Aadhunik"
       android:textColor="#ff00"
       android:textSize="40sp"
       app:font_name="@string/aadhunik" />

       <io.gloxey.cfv.CFButton
       android:layout_width="match_parent"
       android:layout_height="wrap_content"
       android:text="Kung Fool"
       android:textColor="#154748"
       app:font_name="@string/kung_fool" />

       <io.gloxey.cfv.CFEditText
       android:layout_width="match_parent"
       android:layout_height="wrap_content"
       android:gravity="center"
       android:text="Hello world"
       android:textSize="30sp"
       app:font_name="@string/skrova" />

       <io.gloxey.cfv.CFCheckBox
       android:layout_width="wrap_content"
       android:layout_height="wrap_content"
       android:layout_gravity="center"
       android:text="Painting In The Sun Light"
       android:textSize="30sp"
       app:font_name="@string/painting_in_the_sun_light" />

其他回答

现在有很多应用字体的方法,最简单的方法之一是这样的, 1)右键单击res文件夹 进入“新建> Android资源目录”。

2)从资源类型列表中选择字体,然后单击确定。

3)把你的字体文件放在字体文件夹里。

根据Android O的新特性,XML字体资源作为新特性可用。

添加字体作为资源,在Android Studio中执行以下步骤:

1)右键单击res文件夹,进入New > Android资源目录。出现“新建资源目录”窗口。

2)在“资源类型”列表中选择“字体”,单击“确定”。

注意:资源目录名必须为字体。

3)在字体文件夹中添加你的字体文件。

您可以在新的资源类型font的帮助下访问字体资源。例如,要访问字体资源,请使用@font/myfont或R.font.myfont。

如。字体字体= getResources().getFont(R.font.myfont); textView.setTypeface(字体);

芬兰湾的科特林回答

如果你需要在代码方面使用字体,你可以使用这个功能,它也有版本代码控制。

fun getFontJarvisWhite(): Typeface {
    return if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) resources.getFont(R.font.jarvis_white)
    else context?.let { ResourcesCompat.getFont(it, R.font.jarvis_white) }!!
}

如果你像我一样对Android非常陌生,这可能有点棘手。请务必致电:

TextView myTextView = (TextView) findViewById(R.id.textView);
Typeface typeface=Typeface.createFromAsset(getAssets(), "fonts/your font.ttf");
myTextView.setTypeface(typeface);

方法,例如onCreate。

有很多方法来设置自定义字体家族在字段和我使用如下。

添加字体作为资源,在Android Studio中执行以下步骤:

1)右键单击res文件夹,进入New > Android资源目录。出现“新建资源目录”窗口。

2)在“资源类型”列表中选择“字体”,单击“确定”。

注意:资源目录名必须为字体。

3)在字体文件夹中添加你的字体文件。

在xml文件中添加所需视图中的字体:

注:但你需要做到以下几点:

Android Studio 3.0以上的金丝雀。 你的Activity扩展了AppCompatActivity。 像这样更新你的Gradle文件:

    compileSdkVersion 26
    buildToolsVersion "26.0.1"
    defaultConfig {        
        minSdkVersion 19
        targetSdkVersion 26
        versionCode 1
        versionName "1.0"
        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
    }

buildtoolsVersion以上26和最低targetSdkVersion要求26

在构建中添加依赖项。gradle文件:

classpath 'com.android.tools.build:gradle:3.0.0-beta4'

gradle-wrapper.properties:

distributionUrl=https\://services.gradle.org/distributions/gradle-4.1-all.zip