经典WebView加载HTML布局示例
来源:互联网 发布:java传递参数基本类型 编辑:程序博客网 时间:2024/06/03 20:00
MainActivity
public class ExpandableListViewActivity extends BaseFragmentActivity<Calcdata,L>implements View.OnClickListener { private WebView calc; private String Url ="88888888888888888"; private Dialog mLoadingDialog; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_expandable_listview); init(); } private void init() { mLoadingDialog = VandaAlert.createLoadingDialog(this, ""); calc=(WebView)findViewById(R.id.calc); calc.getSettings().setCacheMode(WebSettings.LOAD_DEFAULT); calc.getSettings().setRenderPriority(WebSettings.RenderPriority.HIGH); calc.setWebViewClient(new WebViewClientEmb()); calc.setWebChromeClient(new WebChromeClient()); //支持javascript calc.getSettings().setJavaScriptEnabled(true); // 设置可以支持缩放 calc.getSettings().setSupportZoom(true); // 设置出现缩放工具 calc.getSettings().setBuiltInZoomControls(true); //扩大比例的缩放 calc.getSettings().setUseWideViewPort(true); //自适应屏幕 calc.getSettings().setLayoutAlgorithm(WebSettings.LayoutAlgorithm.SINGLE_COLUMN); calc.getSettings().setLoadWithOverviewMode(true); calc.getSettings().setJavaScriptCanOpenWindowsAutomatically(true); //listview,webview中滚动拖动到顶部或者底部时的阴影 //使用把图片加载放在最后来加载渲染// calc.getSettings().setBlockNetworkImage(true); //取消滚动条白边效果 calc.setOverScrollMode(View.OVER_SCROLL_NEVER); calc.setScrollBarStyle(View.SCROLLBARS_INSIDE_OVERLAY); System.out.println("this is url======"+Url); calc.loadUrl(Url); } public class WebViewClientEmb extends WebViewClient { // 在WebView中而不是系统默认浏览器中显示页面 @Override public boolean shouldOverrideUrlLoading(WebView view, String url) { view.loadUrl(url); return true; } // 页面载入前调用 @Override public void onPageStarted(WebView view, String url, Bitmap favicon) { super.onPageStarted(view, url, favicon); mLoadingDialog.show(); mLoadingDialog.setCancelable(false); } // 页面载入完成后调用 @Override public void onPageFinished(WebView webView, String url) { // //webview图片自适应,android4.4之前都有用,4.4之后google优化后,无法支持,需要自己手动缩放 webView.loadUrl("javascript:(function(){" + "var objs = document.getElementsByTagName(\"img\"); " + "for(var i=0;i<objs.length;i++) {" + "if(" + Build.VERSION.SDK_INT + ">=19){" + "DrawImage(objs[i],window.innerWidth,300);" + "}" + "}" + "})()"); super.onPageFinished(webView, url); mLoadingDialog.dismiss(); } } @Override protected void processData(Calcdata response) { super.processData(response); if(response != null ) { Url = response.link; calc.loadUrl(Url); System.out.println("this is url======"+Url); } } @Override protected String getRequestUrl() { return "http://42.102.156.27:11888/mobile_server_is/calc.html"; } @Override protected Class<Calcdata> getResponseDataClass() { return Calcdata.class; } @Override protected Map<String, String> getParamMap() { return null; } @Override public void onClick(View v) { } //.getSettings().setCacheMode(WebSettings.LOAD_DEFAULT);}
MainActivity.xml
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context="io.dcloud.H5B79C397.testActivity.ExpandableListViewActivity"> <WebView android:layout_width="match_parent" android:layout_height="match_parent" android:id="@+id/calc"></WebView></LinearLayout>
然后就可以自由加载喽
阅读全文
0 0
- 经典WebView加载HTML布局示例
- WebView加载页面示例
- webview加载html
- WebView加载本地HTML
- webview 加载本地html
- webview加载html内容
- 应用webview加载Html
- WebView 加载 html
- WebView加载html文件
- webview加载html优化
- webview加载html
- WebView加载HTML
- webView加载html
- webView加载html
- webview 加载html
- webview加载html
- WebView如何加载HTML网页
- WebView加载Html格式字符串
- sql多表查询
- [leetcode]483. Smallest Good Base
- 宏、函数、宏函数的区别
- Mysql中文模糊查询问题
- JS多物体透明度运动
- 经典WebView加载HTML布局示例
- Android 的网络请求需要开辟子线程的原因 +程序实例
- 括号配对问题
- 王学岗ToolBar,DrawLayout+Navigation的使用(二)
- 算法训练 字符串逆序
- 炮兵阵地 POJ
- 两两交换链表中的节点
- 全栈(FullStack)工程师指南
- emWin 2天速成实例教程003_Framewin和Window窗口控件和2D绘图