![](/img/trans.png)
[英]React native android fontFamily cant change or does not effect
[英]react-native android fontFamily does not take effect
我在 index.android.js 的歡迎樣式中添加了一個 fontFamily,但是沒有任何效果。 fontFamily 真的可以在安卓上使用嗎?
歡迎:{ fontSize:20, fontFamily:'roboto-thin', textAlign:'center', margin:10}
如果 fontFamily 在 android 上工作,有沒有辦法從資產加載自定義字體? 或者這是由 react-native 實現的一些功能?
對於 Android:使用 0.16.0-rc 添加了自定義字體。 所以你首先需要有 0.16.0-rc 版本,然后你可以從網上下載任何字體。
react-native run-android
fontFamily: 'font_name'
。另請注意 react-native 中自定義 Android 字體的以下限制:
android/app/src/main/assets/fonts
.ttf
文件fontFamily
完全匹配。 例如,如果fontFamily
是'Source Sans Pro'
,則該文件必須命名為Source Sans Pro.ttf
(而不是SourceSansPro.ttf
)。 以下段落中提到的任何后綴都會自動從文件中刪除。_bold
(例如Source Sans Pro_bold.ttf
)_italic
_bold_italic
我相信以下是這里已經解釋的方法的更干凈的替代方法:
將所有字體放在 React-Native 項目目錄中
./assets/fonts/
在 package.json 中添加以下行
"rnpm": {
"assets": ["./assets/fonts"]
}
最后從您的項目目錄在終端中運行
$ react-native link
在您的樣式中使用它以這種方式聲明
fontFamily: 'your-font-name without extension'
如果你的字體是Raleway-Bold.ttf那么,
fontFamily: 'Raleway-Bold'
來源https://medium.com/@danielskripnik/how-to-add-and-remove-custom-fonts-in-react-native-b2830084b0e4
你好這個問題腰對我來說超過兩天了“El+Messiri”字體“ https://fonts.google.com/specimen/El+Messiri ”
我正在做每一個思考寫:
您可以在您的風格中使用 fontFamily: 'ElMessiri-Regular'。
但錯誤在於我在fontFamily: 'ElMessiri-Regular '之后使用了fontWeight : 'bold'並且 fontWeight 覆蓋了 fontFamily 因為“El+Messiri”字體有他自己的 fontFamily 粗體,即“ElMessiri-Bold”
此功能尚未實現。 在此處查看 github 上的相關問題。
解決我的問題的唯一解決方案是記錄所有字體以找出正確的命名
(確保僅在添加資產/字體並運行react-native link
后才執行以下步驟):
無論如何,要記錄它們,請使用 xcode 打開appName.xcworkspace
文件,然后編輯 AppDelegate.m 將此行放在didFinishLaunchingWithOptions
方法的末尾(以及 return 語句之前):
for (NSString* family in [UIFont familyNames])
{
NSLog(@"%@", family);
for (NSString* name in [UIFont fontNamesForFamilyName: family])
{
NSLog(@" %@", name);
}
}
因此,當您運行應用程序(來自 xcode)時,它會輸出如下內容:
這樣,我可以在 react-native 樣式中使用 fontFamily Barow-Light或Zapfino
希望有幫助!
即使遵循了我找到的所有建議,我也為此感到非常困難。
對我有用的方法:確保僅使用小寫字母和下划線命名字體文件。 重新鏈接。 完畢。
已經為此進行了大量的頭發拉扯,但據我所知,在任何地方都沒有提及。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.