您的位置:首页 > 移动开发

WebView 学习

2016-01-14 15:43 381 查看
1: 代码风格都不同.

2: SVN 是apatch组织在维护,

3:eclipse的svn的合并不是可视化的界面,IDEA和studio都是合并什么的都是可视化的界面

4:VisualSvn 可以创建空目录,或者创建三个目录,trunk,master,,,的。

5:周六的时候要填写一个表

6:系统架构

主要的设计模式,使用的第三方框架。

数据结构-〉???

先写,工具类,httpUtil,

写项目的时候,第一步是先写好多个目录,例如adapter,HttpUtils,

Utils:HttpUtil

MyLog

StreamUtil

model:

你们了解后台吗?

前端就是界面展现,前端更关注效果特效。

android 开发,UI的上层,分为native和webapp,两个打雷。

现在native 和web的要正好在一起叫做hybrid。

叫做混合式开发

常见的Hybrid模式的应用,

1:电商类软件:京东,亚马逊,淘宝,天猫

凡是图片一点一点出来的都是用的webView的,

2:新闻资讯软件:某个新闻的

有的例如文字环绕,就是直接用webView来做就好了,如果用android 来做会很麻烦的。

3:在线阅读:在线的电子书阅读

4:有些广告软件就是用webView 来做的。

对于未知技术的掌握的方式:

1:确认需求

例如现在是在Android 程序中,显示网页

android程序中显示HTML内容

2:调研需求的实现方式

3:baidu.com,google.com,stackoverflow.com,github,CSDN,博客园

4: 搜索关键字,结果的过滤,搜索结果的正确性验证。

一定一定要注意,搜索的结果很有可能是错误的。。。。一定要验证

5:记录解决方案,做备份。

6:android 中显示HTML内容

-----------------------------------

下午:

1:WebView的来源

WebKit:最早是linux下面的kde的里面的。

然后在电脑上面safaria,就是苹果电脑上面的也是的用这个webkit的引擎

手机上面,ios上面的safaria,现在除了uc浏览器之外,其他的浏览器都是用的webkit

WebView:Android WebView,IOS 叫做UIWebView

关于WebView 图片显示的问题:

图片需要进行适配:

1;需要和服务器端的开发人员协调

服务器中的网页,图片不允许有尺寸,

客户端需要使用CSS,控制图片的尺寸;

2:通用规则:服务器返回的HTML只是片段,没有<html>,<head>,<body>

需要手动的添加图片屏幕适配的内容。

3:使用css来控制所有图片的适配;使用<style></style>标签,来定义样式

<style>

标签名{

各种样式

}

</style>

String data = "<html><head><style>img{width:100%}</style></head><body>我是网页" +

"<img src=\"https://ss0.bdstatic.com/5aV1bjqh_Q23odCf/static/superman/img/logo/bd_logo1_31bdc765.png\"" +

"</body></html>";

网页中可以使用<meta>来控制,内容,是否可以缩放:http://developer.android.com/guide/webapps/targeting.html

<meta name="viewport"

content="

height = [pixel_value | "device-height"] ,

width = [pixel_value | "device-width"] ,

initial-scale = float_value ,

minimum-scale = float_value ,

maximum-scale = float_value ,

user-scalable = ["yes" | "no"]

" />
http://developer.android.com/guide/webapps/index.html http://developer.android.com/guide/webapps/targeting.html
---------------------------------------------------------

真正的混合开发,网页在本地,js和css是在服务器。

package com.gps.yyq.webviewdemo;

import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.webkit.WebSettings;
import android.webkit.WebView;
import android.webkit.WebViewClient;

public class MainActivity extends AppCompatActivity {

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

WebView webView = (WebView)findViewById(R.id.webView);
webView.setWebViewClient(new WebViewClient());
//设置出事的缩放比例,以100为限
webView.setInitialScale(50);
//WebSettings 是 WebView 的通用 配置集合
WebSettings settings = webView.getSettings();
settings.setBuiltInZoomControls(true);
settings.setDefaultFontSize(50);

//默认情况,WebView 不允许使用JS,
//如果需要使用,那么需要调用这个方法,设置为true
settings.setJavaScriptEnabled(true);
settings.setSupportZoom(true);

//允许webView 访问手机内部的文件,来加载网页
settings.setAllowFileAccess(true);

/**
* 参数1: 数据字符串表示
* 参数2: 数据的类型和字符编码
* 参数3:数据的编码,只支持base64,和null
*/
//        webView.loadData();

// 例如 image.gif->MIME(Content-Type) ,image/gif
//在网站上面下载一些东西的时候,有的就是用用rar打开,有的是用doc打开,
// 对于html的源代码,需要使用text/html 作为类型
// 对于!!!HTML而言,type还需要增加字符编码的设置;
//最终HTML的MIME Type 应该是text/html;charset=UTF-8
//!!!!!!!!!!!!!!!!!!!!charset=UTF-8 一定要设置,而且中间一定是

//关于参数2,编码部分一定要和服务器一致,因为大部分数据都是从服务器来的
//
String data = "<html><head><meta name=\"viewport\" content=\"user-scalable =yes\"></meta><style>img{width:100%}</style></head><body>我是网页" +
"<img  src=\"https://ss0.bdstatic.com/5aV1bjqh_Q23odCf/static/superman/img/logo/bd_logo1_31bdc765.png\"" +
//"<img width="200" src=\"https://ss0.bdstatic.com/5aV1bjqh_Q23odCf/static/superman/img/logo/bd_logo1_31bdc765.png\"" +

"</body></html>";
webView.loadData(
data,
"text/html;charset=UTF-8",// MIME 是一个规范,定义了所有的文件的类型。
null
);
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: