Android 設置系統影響界面解決方案

如果要像微信一樣,所有字體都不允許隨系統調節而發生大小變化,要怎么辦呢?利用Android的Configuration類中的fontScale屬性,其默認值為1,會隨系統調節字體大小而發生變化,如果我們強制讓其等于默認值,就可以實現字體不隨調節改變,在工程的Application或BaseActivity中添加下面的代碼:

@OverridepublicvoidonConfigurationChanged(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 =newConfiguration();? ? ? ? ? ??

? newConfig.setToDefaults();

//設置默認

res.updateConfiguration(newConfig, res.getDisplayMetrics());? ? ??

}

return res;

}

解決WebView不隨系統字體大小而改變?

webView.getSettings().setTextZoom(100);

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容