WebView 实现MiniBrowser
webview 实现
2023-09-27 14:23:52 时间
package org.hjw.minibrowser; import android.os.Bundle; import android.app.Activity; import android.view.KeyEvent; import android.view.Menu; import android.view.View; import android.webkit.WebSettings; import android.webkit.WebView; import android.webkit.WebViewClient; import android.widget.Button; import android.widget.EditText; publicclass MainActivity extends Activity { EditText url; Button go; WebView web; @Override protectedvoid onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); url = (EditText) findViewById(R.id.url); go = (Button) findViewById(R.id.go); web = (WebView) findViewById(R.id.myWebview); WebSettings webSettings = web.getSettings();// 允许使用JS webSettings.setJavaScriptEnabled(true); web.setWebViewClient(new WebViewClient() { publicboolean shouldOverrideUrlLoading(WebView view, String url) { view.loadUrl(url); returntrue; } });// 允许内部跳转 go.setOnClickListener(new View.OnClickListener() { @Override publicvoid onClick(View v) { web.loadUrl(url.getText().toString()); } }); } publicboolean onKeyDown(int keyCode, KeyEvent event) {//重写回退时间if ((keyCode == KeyEvent.KEYCODE_BACK) && web.canGoBack()) { web.goBack(); returntrue; } returnsuper.onKeyDown(keyCode, event); } @Override publicboolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds items to the action bar if it is present. getMenuInflater().inflate(R.menu.main, menu); returntrue; } }
Ps.1.通过WebSettings对象设置允许使用JS.
2.重写OnKeyDown方法实现按Back键返回上一页.
3.使用setWebViewClient方法,实现内部跳转.
4.基本的miniBrowser就完成了.
相关文章
- [转] 关于手机webview内核、默认浏览器、各家小程序的渲染层浏览器的区别和兼容性
- uni-app - App 平台内嵌网页物理手机自带返回键失效解决方案(内嵌的 webview 网页 H5 打包后手机物理返回键无效直接退出应用了)
- Android 4.4 KitKat, the browser and the Chrome WebView
- 【妙用WebView】鸿蒙元服务中如何使用Java Script的API创建地图
- HTML的CoreText流畅度超过WebView。CoreText第三方框架DTCoreText的介绍
- WebView Cache 缓存清除
- 鸿蒙-webview的使用和JS交互(附源码)
- 【HarmonyOS】webview在鸿蒙系统无点击反应
- 【HarmonyOS】鸿蒙3.0使用WebView进行链接跳转,告警“hwbr_engine_AwContentsClient: Denied starting an intent without a
- 【快应用】webview接口打开网页,网页会被自动放大,如何适配手机大小
- WebView的截屏实现