gpt4 book ai didi

android - Xamarin.Android-安卓 :fontFamily doesn't work

转载 作者:行者123 更新时间:2023-11-29 23:53:30 31 4
gpt4 key购买 nike

我需要使用 android:fontFamily 更改 textView 字体。问题是它给我错误,我不知道为什么

我的代码:

  <TextView
android:text="Arial font"
android:textSize="8pt"
android:fontFamily="@font/arial"
android:layout_marginTop="4pt"/>

我尝试了一切:在 Assets 文件夹中添加 Arial.ttf,在 Assets 中创建一个字体文件夹,尝试更改属性,尝试在 android:fontFamily 中使用“arial.ttf”而不是“arial”,但没有任何效果.

最佳答案

仅支持 API-26 及更高版本:

  • Resources/font 目录中添加您的字体文件

  • 对于 API-26+ 仅支持使用 android:fontFamily 即可:

    android:fontFamily="@font/tastysushi"

但是...对于 API 16 到 28+,您需要设置/使用 Android 支持库

API-16+ 的支持

  • 添加 Xamarin.Android.Support.Compat 包(v26 或更高版本)

  • 如果您在 AXML 布局中使用 fontFamily,请添加 Xamarin.Android.Support.v7.AppCompat 包 (v26+)(否则您可以通过编程方式分配字体系列并使用 Activity 子类)

  • 您的 Activity 必须AppCompatActivity 的子类,以便基于布局/AXML 的app:fontFamily 属性起作用

  • Resources/font目录下添加字体文件

     |-Resources
    | |-font
    | | |-tastysushi.ttf
  • 可选,但方便,在 Resources/font 目录中创建一个字体系列 xml 文件(androidapp 命名空间必须被定义)

    <!-- Resource/font/sushi.xml -->    
    <?xml version="1.0" encoding="UTF-8" ?>
    <font-family
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto">
    <font
    android:fontStyle="normal"
    android:fontWeight="400"
    android:font="@font/tastysushi"

    app:fontStyle="normal"
    app:fontWeight="400"
    app:font="@font/tastysushi"
    />

    注意:您还可以向字体系列添加粗体和斜体 font 元素...并为每个元素分配来自同一字体系列的不同字体文件...

  • 在布局文件的顶部元素中添加 app: 命名空间:

    xmlns:app="http://schemas.android.com/apk/res-auto"

  • 现在必须使用 fontFamily 属性才能使用 app: 命名空间

    app:fontFamily="@font/sushi"

注意:@font/既可以引用实际的字体文件,也可以引用基于xml的字体系列文件

注意:您还可以将字体嵌入样式中,这样就不必使用字体系列填充每个 AXML 元素...

关于android - Xamarin.Android-安卓 :fontFamily doesn't work,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50631391/

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