android全域性修改字型
解決方案:
新增字型(.otf)到工程目錄assets下, 我的是在assets在新建了一個fonts包.
public class FontsUtils {
/**
* 設定自定義字型
*
* @param context
* @param staticTypefaceFieldName 需要替換的系統字型樣式
* @param fontAssetName 替換後的字型樣式
*/
public static void setDefaultFont(Context context, String staticTypefaceFieldName, String fontAssetName) {
// 根據路徑得到Typeface
Typeface regular = Typeface.createFromAsset(context.getAssets(), fontAssetName);
// 設定全域性字型樣式
replaceFont(staticTypefaceFieldName, regular);
}
private static void replaceFont(String staticTypefaceFieldName, final Typeface newTypeface) {
try {
final Field staticField = Typeface.class.getDeclaredField(staticTypefaceFieldName);
staticField.setAccessible(true);
//替換系統字型樣式
staticField.set(null, newTypeface);
} catch (NoSuchFieldException e) {
e.printStackTrace();
} catch (IllegalAccessException e) {
e.printStackTrace();
}
}
}
在Application裡面如下寫
@Override
public void onCreate() {
super.onCreate();
_application = this;
ShenContext.set(this);
FontsUtils.setDefaultFont(this, "SANS_SERIF", "fonts/ziti.otf");
}
在style檔案
<style name="AppCompatNotitleTheme" parent="Theme.AppCompat.NoActionBar">
<item name="android:windowNoTitle">true</item>
<item name="android:windowFullscreen">true</item>
<!-- <item name="android:fontFamily">@font/ziti</item>-->
<item name="android:typeface">sans</item>
</style>
AndroidManifest.xml
<application
android:theme="@style/AppCompatNotitleTheme"
相關文章
- Qt 設定全域性字型QT
- win10全域性字型怎麼更改_win10如何更改全域性字型Win10
- win10全域性字型更換方法_win10怎樣更改全域性字型Win10
- Android中TabLayout修改字型大小AndroidTabLayout
- 成品直播原始碼,Flutter 夜間模式 全域性字型原始碼Flutter模式
- Ionic3全域性修改toast樣式AST
- 短視訊程式開發,Flutter 夜間模式 全域性字型Flutter模式
- 修改NPM全域性模式的預設安裝路徑NPM模式
- MySQL 8.0 全域性變數的修改持久化 set persistMySql變數持久化
- iOS 修改webView字型iOSWebView
- MySQL 8 新特性之持久化全域性變數的修改MySql持久化變數
- 修改php網站字型修改,輕鬆更新網站字型樣式PHP網站
- vue定義全域性變數和全域性方法Vue變數
- Android之防快速重複點選的全域性設定Android
- Spring tool suite修改字型大小SpringUI
- 003、v3admin學習,修改全域性配置如去掉水印等
- 框架(frameset),全域性屬性框架
- 全域性變數變數
- CMake 屬性之全域性屬性
- vue2.0全域性路由守衛(全域性控制登入)Vue路由
- 如何檢視字型詳細資訊,修改字型名稱?
- Pypycharm修改程式碼字型大小及修改顏色PyCharm
- word修改公式中的部分字型公式
- 微信小程式的全域性彈窗以及全域性例項微信小程式
- 超全域性陣列有哪些?超全域性陣列有什麼作用?陣列
- Flutter 全域性彈窗Flutter
- 全域性 DOM 變數變數
- 全域性獲取HttpContextHTTPContext
- Application全域性應用APP
- Android更換APP字型—TextView各種字型樣式AndroidAPPTextView
- 以太坊中的全域性屬性
- 如何修改 React Native 的預設字型React Native
- 如何修改網站網頁字型,調整網站字型的方法網站網頁
- 修改全域性變數時,可變型別和不可變型別的區別變數型別
- React - Context API 維護全域性狀態,實現全域性元件通訊ReactContextAPI元件
- css字型樣式屬性CSS
- Swift 全域性匯入ModuleSwift
- js replace 全域性替換JS