标签:深色 适配 mWebView WebView Android true webSettings
直播系统平台搭建适配Android WebView 深色主题的相关代码
深色主题适配时,webview可以通过api设置自动适配,不用再添加night资源,但是对系统版本有要求,需要android 10(Build.VERSION_CODES.Q),才能调用此api。方法见如下.
public class WebViewActivity extends AppCompatActivity {
WebView mWebView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_web_view);
mWebView = findViewById(R.id.web_view);
mWebView.getSettings();
//得到webview设置
WebSettings webSettings = mWebView.getSettings();
//允许使用javascript
webSettings.setJavaScriptEnabled(true);
//设置字符编码
webSettings.setDefaultTextEncodingName("UTF-8");
//支持缩放
webSettings.setSupportZoom(true);
webSettings.setBuiltInZoomControls(true);
webSettings.setUseWideViewPort(true);
webSettings.setLoadWithOverviewMode(true);
//将WebAppInterface与javascript绑定
//mWebView.addJavascriptInterface(new PaymentJavaScriptInterface(),"Android");
//android assets目录下html文件路径url为 file:///android_asset/profile.html
String url = "file:///android_asset/" + "百度一下,你就知道.html";
mWebView.loadUrl(url);
}
@RequiresApi(api = Build.VERSION_CODES.Q)
@Override
protected void onResume() {
super.onResume();
if ((getResources().getConfiguration().uiMode & Configuration.UI_MODE_NIGHT_MASK) == Configuration.UI_MODE_NIGHT_YES) { //判断如果系统是深色主题
mWebView.getSettings().setForceDark(WebSettings.FORCE_DARK_ON);//强制开启webview深色主题模式
} else {
mWebView.getSettings().setForceDark(WebSettings.FORCE_DARK_OFF);
}
}
}
以上就是直播系统平台搭建适配Android WebView 深色主题的相关代码, 更多内容欢迎关注之后的文章
标签:深色,适配,mWebView,WebView,Android,true,webSettings 来源: https://www.cnblogs.com/yunbaomengnan/p/15337937.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。