IOS UIWebView 網頁視圖

UIWebView 繼承於UIView
利用這個類能夠簡單的實現網頁瀏覽

下面先看一下屬性
@property(nonatomic, assign) id delegate //類的代理 

@property(nonatomic, readonly, retain) NSURLRequest *request
//當前顯示頁面的URL請求

@property(nonatomic, readonly, getter=isLoading) BOOL loading
//當前網頁是不是正在加載狀態

@property(nonatomic, readonly, getter=canGoBack) BOOL canGoBack
//從當前網頁是否能返回上一網頁
@property(nonatomic, readonly, getter=canGoForward) BOOL canGoForward
//從當前網頁可否前進

@property(nonatomic) BOOL scalesPageToFit
//網頁內容是否自適應大小

@property(nonatomic, readonly, retain) UIScrollView *scrollView
//與當前web視圖 相關聯的滾動視圖

@property(nonatomic) BOOL suppressesIncrementalRendering
//是否網頁內容下載完畢纔開始渲染web視圖,默認爲NO

@property (nonatomic) BOOL keyboardDisplayRequiresUserAction
//是否在web頁面響應用戶輸入彈出鍵盤,默認爲YES

@property(nonatomic) UIDataDetectorTypes dataDetectorTypes
//把網頁上的內容轉換爲可點擊的連接
enum {
UIDataDetectorTypePhoneNumber = 1 << 0,
UIDataDetectorTypeLink = 1 << 1,
UIDataDetectorTypeAddress = 1 << 2,
UIDataDetectorTypeCalendarEvent = 1 << 3,
UIDataDetectorTypeNone = 0,
UIDataDetectorTypeAll = NSUIntegerMax
};

@property(nonatomic) BOOL allowsInlineMediaPlayback
//這個值決定了用內嵌HTML5播放視頻仍是用本地的全屏控制。
爲了內嵌視頻播放,不單單須要在這個頁面上設置這個屬性,
還必須的是在HTML中的video元素必須包含webkit-playsinline屬性。默認使NO。

@property(nonatomic) BOOL mediaPlaybackRequiresUserAction
//在iPhone和iPad上默認使YES。這個值決定了HTML5視頻能夠自動播放仍是須要用戶去啓動播放
@property(nonatomic) BOOL mediaPlaybackAllowsAirPlay
//這個值決定了從這個頁面是否能夠Air Play。 在iPhone和iPad上默認使YES。

下面來看一下方法

加載數據
- (void)loadRequest:(NSURLRequest *)request
//加載URL數據請求

- (void)loadHTMLString:(NSString *)string baseURL:(NSURL *)baseURL
//設置主頁,主頁內容爲baseURL連接內容

- (void)loadData:(NSData *)data MIMEType:(NSString *)MIMEType textEncodingName:(NSString *)encodingName baseURL:(NSURL *)baseURL
//設置主頁內容,MIME類型,編碼的內容和基本的URL。
//data數據爲主頁內容 

- (void)stopLoading //中止加載數據
- (void)reload //加載當前頁數據

網頁切換

- (void)goBack //後退一頁
- (void)goForward //前進一頁

運行Java腳本

- (NSString *)stringByEvaluatingJavaScriptFromString:(NSString *)script
//返回運行腳本語言的結果。
JavaScript的執行時間被限定在10秒鐘,若是執行時間超過10秒,那麼頁面就中止執行這個腳本。
JavaScript的執行或許可以阻塞主線程,因此當腳本執行的時候不容許用戶影響頁面的加載。
JavaScript的內存分配被限制在10M,若是超出這個限制那麼頁面會發生異常。
相關文章
相關標籤/搜索