UIWebView头文件研读
//
// UIWebView.h
// UIKit
//
// Copyright (c) 2007-2011, Apple Inc. All rights
reserved.
//
typedef enum {
UIWebViewNavigationTypeLinkClicked, //链接类型,html中的超级链接
UIWebViewNavigationTypeFormSubmitted, //html表单提交
UIWebViewNavigationTypeBackForward, //html 触发返回操作
UIWebViewNavigationTypeReload,
//html 刷新当前页
UIWebViewNavigationTypeFormResubmitted, //html 表单再提交
UIWebViewNavigationTypeOther //其他
} UIWebViewNavigationType; //点击webview中的某些事件时的类型,js控制本地函数
@class UIWebViewInternal;
@protocol UIWebViewDelegate;
UIKIT_CLASS_AVAILABLE(2_0) @interface UIWebView : UIView {
@private
UIWebViewInternal *_internal;
}
@property(nonatomic,assign) id delegate;
@property(nonatomic,readonly,retain) UIScrollView *scrollView __OSX_AVAILABLE_STARTING(__MAC_NA, __IPHONE_5_0);
//加载web内容 有三种方式
- (void)loadRequest:(NSURLRequest *)request;
- (void)loadHTMLString:(NSString *)string baseURL:(NSURL *)baseURL;
- (void)loadData:(NSData *)data MIMEType:(NSString *)MIMEType textEncodingName:(NSString *)textEncodingName baseURL:(NSURL *)baseURL;
@property(nonatomic,readonly,retain) NSURLRequest *request;
- (void)reload;
- (void)stopLoading;
- (void)goBack;
- (void)goForward;
@property(nonatomic,readonly,getter=canGoBack) BOOL canGoBack;
@property(nonatomic,readonly,getter=canGoForward) BOOL canGoForward;
@property(nonatomic,readonly,getter=isLoading) BOOL loading;
//在webview中操作html网页
- (NSString *)stringByEvaluatingJavaScriptFromString:(NSString
*)script;
@property(nonatomic) BOOL scalesPageToFit;
@property(nonatomic) BOOL detectsPhoneNumbers __OSX_AVAILABLE_BUT_DEPRECATED(__MAC_NA, __MAC_NA, __IPHONE_2_0, __IPHONE_3_0);
@property(nonatomic) UIDataDetectorTypes dataDetectorTypes __OSX_AVAILABLE_STARTING(__MAC_NA, __IPHONE_3_0);
@property (nonatomic) BOOL allowsInlineMediaPlayback
__OSX_AVAILABLE_STARTING(__MAC_NA, __IPHONE_4_0); // iPhone Safari
defaults to NO. iPad Safari defaults to YES
@property (nonatomic) BOOL mediaPlaybackRequiresUserAction
__OSX_AVAILABLE_STARTING(__MAC_NA, __IPHONE_4_0); // iPhone and
iPad Safari both default to YES
@property (nonatomic) BOOL mediaPlaybackAllowsAirPlay
__OSX_AVAILABLE_STARTING(__MAC_NA, __IPHONE_5_0); // iPhone and
iPad Safari both default to YES
@end
@protocol UIWebViewDelegate
@optional
//在js中操作webview中的object-c方法
如果获取设备信息 调摄像头等 web内容将要开始请求
- (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request
navigationType:(UIWebViewNavigationType)navigationType;
//web内容已开始加载的回调
- (void)webViewDidStartLoad:(UIWebView *)webView;
//web内容已经加载完毕的回调
- (void)webViewDidFinishLoad:(UIWebView *)webView;
//web内容加载失败的回调
- (void)webView:(UIWebView *)webView didFailLoadWithError:(NSError *)error;
@end
//
//
//
//
//
typedef enum {
} UIWebViewNavigationType;
@class UIWebViewInternal;
@protocol UIWebViewDelegate;
UIKIT_CLASS_AVAILABLE(2_0) @interface UIWebView : UIView {
}
@property(nonatomic,assign) id delegate;
@property(nonatomic,readonly,retain) UIScrollView *scrollView __OSX_AVAILABLE_STARTING(__MAC_NA, __IPHONE_5_0);
//加载web内容 有三种方式
- (void)loadRequest:(NSURLRequest *)request;
- (void)loadHTMLString:(NSString *)string baseURL:(NSURL *)baseURL;
- (void)loadData:(NSData *)data MIMEType:(NSString *)MIMEType textEncodingName:(NSString *)textEncodingName baseURL:(NSURL *)baseURL;
@property(nonatomic,readonly,retain) NSURLRequest *request;
- (void)reload;
- (void)stopLoading;
- (void)goBack;
- (void)goForward;
@property(nonatomic,readonly,getter=canGoBack) BOOL canGoBack;
@property(nonatomic,readonly,getter=canGoForward) BOOL canGoForward;
@property(nonatomic,readonly,getter=isLoading) BOOL loading;
//在webview中操作html网页
- (NSString *)stringByEvaluatingJavaSc
@property(nonatomic) BOOL scalesPageToFit;
@property(nonatomic) BOOL detectsPhoneNumbers __OSX_AVAILABLE_BUT_DEPRECATED(__MAC_NA, __MAC_NA, __IPHONE_2_0, __IPHONE_3_0);
@property(nonatomic) UIDataDetectorTypes dataDetectorTypes __OSX_AVAILABLE_STARTING(__MAC_NA, __IPHONE_3_0);
@property (nonatomic) BOOL allowsInlineMediaPlaybac
@property (nonatomic) BOOL mediaPlaybackRequiresUse
@property (nonatomic) BOOL mediaPlaybackAllowsAirPl
@end
@protocol UIWebViewDelegate
@optional
//在js中操作webview中的object-c方法
- (BOOL)webView:(UIWebView *)webView shouldStartLoadWithReque
//web内容已开始加载的回调
- (void)webViewDidStartLoad:(UIWebView *)webView;
//web内容已经加载完毕的回调
- (void)webViewDidFinishLoad:(UIWebView *)webView;
//web内容加载失败的回调
- (void)webView:(UIWebView *)webView didFailLoadWithError:(NSError *)error;
@end
网络上志同道合,我们一起学习网络安全,一起进步,QQ群:694839022