簡體   English   中英

react-native 選擇器樣式自定義字體

[英]react-native picker styling custom font

我正在使用我在 res/values/styles.xml 中的 style.xml 文件中成功自定義的 Picker 組件:

<resources>
<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
<item name="android:spinnerItemStyle">@style/SpinnerItem</item>
<item name="android:spinnerDropDownItemStyle">@style/SpinnerDropDownItem</item>
</style>

<style name="SpinnerItem">
<item name="android:fontFamily">Lato-Bold</item>
<item name="android:textSize">20dp</item>
</style>
<style name="SpinnerDropDownItem">
<item name="android:fontFamily">Lato-Bold</item>
<item name="android:padding">10dp</item>
<item name="android:textSize">16dp</item>
<item name="android:textColor">#ffffff</item>
<item name="android:background">#000000</item>
</style>
</resources>

目前我的自定義 fontFamily: Lato-Bold 被忽略了。 有誰知道如何讓自定義 Spinner 字體工作?

我可以按照此處的官方步驟使用自定義字體系列。

但是,當我遵循該指南時,有些事情並不那么清楚,所以這里總結了您需要采取的步驟(請不要跳過閱讀官方指南,因為這只是對它的補充):

  1. 創建一個新的字體資源目錄( res/font
  2. 在那里添加您的字體文件。 您的文件名不應包含a-z0-9_之外的任何字符(必須為小寫)。 示例: res/font/lato_bold.ttf
  3. 創建字體系列文件。 在我們的示例中,它將是res/font/lato.xml並具有以下內容:
<?xml version="1.0" encoding="utf-8"?>
<font-family xmlns:android="http://schemas.android.com/apk/res/android">
    <font
        android:fontStyle="normal"
        android:fontWeight="700"
        android:font="@font/lato_bold" />
</font-family>
  1. 在您的自定義樣式中引用您的字體,如下所示:
<item name="android:fontFamily">@font/lato_bold</item>

以下答案有效。 經過 3 個小時的研究,我終於找到了有效的方法。 謝謝奧利斯特。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM