Android 修改系統字型大小,導致頁面展示異常解決方案
阿新 • • 發佈:2018-12-18
Android系統預設是允許修改系統本身的字型大小的,導致頁面展示異常。
頁面展示異常是因為系統字型大小影響到了程式中字型的單位sp,所以解決此問題的方案1是,將佈局中字型大小的單位sp換成dp
解決方案2:重寫Activity或Application中的getResources()方法,即:
@Override public void onConfigurationChanged(Configuration newConfig) { if (newConfig.fontScale != 1)//非預設值 getResources(); super.onConfigurationChanged(newConfig); } @Override public Resources getResources() { Resources res = super.getResources(); if (res.getConfiguration().fontScale != 1) {//非預設值 Configuration newConfig = new Configuration(); newConfig.setToDefaults();//設定預設 res.updateConfiguration(newConfig, res.getDisplayMetrics()); } return res; }