iOS 翻译-UIWebView的基本简介-官方文档翻译
继承关系:NSObject-UIResponder-UIView-UIWebView
遵循:NSCoding NSObject UIAppearance UIAppearanceContainer UICoordinateSpace UIDynamicItem UIScrollViewDelegate UITraitEnvironment
你可以使用UIWebView类嵌入网页内容在您的应用程序。这样做,您只需创建一个UIWebView对象,将它附加到一个窗口,并发送一个请求来加载网页内容。你也可以使用这个类来搬回和网页历史的前进,你甚至可以以编程方式设置的一些网页内容的性质。
注:
在iOS 8及以后的运行应用程序,建议您使用WKwebview代替使用UIWebView。此外,如果你使用不能运行的JavaScript文件,应该设置WKpreferences属性 javascriptenabled为NO。
使用loadhtmlstring:baseURL:开始加载本地HTML文件,loadRequest的方法:开始加载的Web内容的方法。使用stopLoading方法停止加载,loading 属性是去发现是否有一个Web视图是在加载过程中。
如果你允许用户通过网页历史向前向后移动了,那么你可以使用goForward和goBack方法做完按钮的动作。使用canGoBack和canGoForward属性禁用的按钮时当用户不能在一个方向移动。
默认情况下,一个webview会自动将出现在网络内容中的电话号码转换为电话号码。当电话链接被点击时,手机应用将进行拨号。设置detectsphonenumbers属性为NO 关闭此默认行为。
当网页内容显示时,你也可以使用scalesPageToFit属性去设置网页内容的比例。此后,用户可以使用手势改变尺度。
如果你想跟踪Web内容加载设置代表性对象符合UIWebviewdelegate协议。
重点:
你不应该嵌入UIWebView或UITableView对象到UIScrollView对象里。如果你这样做,意外的行为可能会导致因为触摸事件的对象可以混淆和错误处理。
你可以很方便的调试HTML,CSS和JavaScript,里面包含有Web Inspector UIWebView。读取调试网络内容的iOS学习如何配置iOS Web Inspector。阅读Safari网页内容指南 Safari Web Content Guide的其余部分来学习如何创建Web内容,在iPhone和ipad Safari优化。
有关基本观点的行为信息,请查看iOS编程指南。
支持的文件格式
除了HTML内容,UIWebView对象可以用来显示其他内容类型。有关更多信息,请参见Using UIWebView to display select document types。
在iOS 6之后,如果你给restorationidentifier属性指定一个值,它试图保持它的URL历史,和滚动位置每个页面的缩放,和信息的页面是目前被视。在恢复过程中,视图将恢复这些值,以便将网络内容显示。如何保护和恢复工作状态的更多信息,查看iOS应用程序编程指南App Programming Guide for iOS。
有关外观和行为配置的更多信息,请参阅网络视图。
继承的笔记
UIWebView类不能被继承
设置代理:delegate 属性
加载内容:
- loadData:MIMETyoe:textEncodingName:baseURL:
- loadHTMLString:baseURL:
- loadRequese:
request
loading
-stopLoading
-reload
向前向后移动
canGoBack
canGoForward
-goBack
-goForward
设置网页内容属性
scalesPageToFit属性
scrollView属性
suppressesIncrementalRendering 属性
keyboardDisplayRequiresUserAction属性
运行Javascript
-stringByEvaluatingJavaScriptFromString
删除数据类型
dataDetectorTypes属性
媒体回放
gapBetweenPages属性
pageCount属性
pageLength属性
paginationBreakingMode属性
paginationMode属性
数据类型
UIWebViewNavigationType
常量
UIWebPaginationBreakingMode
UIWebPaginationMode
Setting the Delegate
-
delegate
Property -
-
canGoBack
Property -
canGoForward
Property -
-
detectsPhoneNumbers
(iOS 3.0) Property -
scalesPageToFit
Property -
scrollView
Property -
suppressesIncrementalRendering
Property -
keyboardDisplayRequiresUserAction
Property -
-
dataDetectorTypes
Property -
-
allowsInlineMediaPlayback
Property -
mediaPlaybackRequiresUserAction
Property -
mediaPlaybackAllowsAirPlay
Property -
-
gapBetweenPages
Property -
pageCount
Property -
pageLength
Property -
paginationBreakingMode
Property -
paginationMode
Property -