内容の保証はできません。
/System/Library/frameWorks/UIKit.framework
クラス UIWebView †
NSObject
|
+--UIResponder
|
+--UIView
|
+--UIWebView
概要 †
UIWebViewクラスはWEBコンテンツをアプリケーションに埋め込むために利用します。これを行うには、単純にUIWebViewオブジェクトを作成してウインドウに添付し、WEBコンテンツをロードする要求を送信します。また、WEBページの履歴の中を戻る/進むことで移動することが可能です。いくつかのWEBコンテンツプロパティをプログラムで設定することもできます。
loadRequest:メソッドを使用してWEBコンテンツのロードを開始しstopLoadingメソッドを使用して停止します。また、loadingプロパティを使用してWEBビューのローディングプロセスを確認することが出来ます。
WEBページの履歴を戻るまたは進むことを許可する場合、ボタンのアクションとしてgoBackメソッドおよびgoForwardメソッドを使用できます。canGoBackプロパティおよびcanGoForwardプロパティを使用してボタンを無効にすることで、ユーザの移動を制限できます。
デフォルトで、WEBビューはWEBコンテンツが表示する電話番号を自動的に電話へのリンクに変換します。電話へのリンクがタップされた時、電話アプリケーションが起動してダイアルを開始します。detectsPhoneNumbersプロパティを設定することでこのデフォルトの動作を無効にすることができます。
また、requestプロパティを利用することでプログラムでWEBビューに表示される最初のWEBコンテンツのスケール(尺度)を設定することが可能です。その後は、ユーザがジェスチャーを使ってWEBビューのスケールを変更できます。
delegateプロパティでは、WEBコンテンツのロードを追跡する場合、UIWebViewDelegateプロトコルに準拠するプロトコルを設定します。
iPhone上のSafariで互換性のある最適化されたWEBコンテンツを表示する方法の詳細は『Safari Web Content Guide for iPhone OS』を参照してください。
インデックス †
デリゲートの設定 †
delegate property
コンテンツの読み込み †
– loadData:MIMEType:textEncodingName:baseURL:
– loadHTMLString:baseURL:
– loadRequest:
request property
loading property
– stopLoading
– reload
移動 †
canGoBack property
canGoForward property
– goBack
– goForward
WEBコンテンツプロパティの設定 †
detectsPhoneNumbers property 3.0b以降では非推奨
scalesPageToFit property
JavaScriptの実装 †
– stringByEvaluatingJavaScriptFromString:
新しいメソッド †
dataDetectorTypes property 3.0b以降
プロパティ †
canGoBack †
WEBコンテンツの履歴を『戻る』ことが可能かどうかを決定する。
@property(nonatomic, readonly, getter=canGoBack) BOOL canGoBack
canGoForward †
WEBコンテンツの履歴を『進む』ことが可能かどうかを決定する。
@property(nonatomic, readonly, getter=canGoForward) BOOL canGoForward
dataDetectorTypes †
WEBコンテンツでクリック(参照)可能なURLに変換する際のデータタイプを指定する。
@property(nonatomic) UIDataDetectorTypes dataDetectorTypes
delegate †
レシーバのデリゲートを指定する。
※UIWebViewのインスタンスを生成してデリゲートを設定する前に、deallocメソッド等で初めにdelegateプロパティをnilに設定する必要がある。
@property(nonatomic, assign) id<UIWebViewDelegate> delegate
detectsPhoneNumbers †
電話番号が探知されるかどうかを決定する。
@property(nonatomic) BOOL detectsPhoneNumbers
loading †
レシーバでコンテンツがロードされたかどうかを返す。(読み取りのみ)
@property(nonatomic, readonly, getter=isLoading) BOOL loading
request †
コンテンツをロードするためのURLリクエストの場所を特定する。(読み取りのみ)
@property(nonatomic, readonly, retain) NSURLRequest *request
scalesPageToFit †
WEBページのスケール(尺度)をビューに合わせ、ユーザがスケールを変更できるかどうかを決定する。
@property(nonatomic) BOOL scalesPageToFit
インスタンスメソッド †
goBack †
WEBページの履歴のリストから前のコンテンツをロードする。
- (void)goBack
goForward †
WEBページの履歴のリストから次のコンテンツをロードする。
- (void)goForward
loadData:MIMEType:textEncodingName:baseURL: †
メインページコンテンツ、MIMEタイプ、コンテンツのエンコード、ベースURLを設定する。
– (void)loadData:(NSData *)data MIMEType:(NSString *)MIMEType textEncodingName:(NSString *)encodingName baseURL:(NSURL *)baseURL
loadHTMLString:baseURL: †
メインページコンテンツとベースURLを設定する。
- (void)loadHTMLString:(NSString *)string baseURL:(NSURL *)baseURL
loadRequest: †
非同期クライアントリクエストの開始により指定したURLへの接続を行う。
- (void)loadRequest:(NSURLRequest *)request
reload †
現在のページをリロードする。
- (void)reload
stopLoading †
レシーバによって管理されているWEBコンテンツのロードを停止する。
- (void)stopLoading
stringByEvaluatingJavaScriptFromString: †
JavaScriptを実行する。
- (NSString *)stringByEvaluatingJavaScriptFromString:(NSString *)script
コンスタント †
UIWebViewNavigationType †
ユーザアクションを決定する。
| アクション | 概要 |
| UIWebViewNavigationTypeLinkClicked | リンクをタップした時 |
| UIWebViewNavigationTypeFormSubmitted | ユーザがフォームをサブミットした時 |
| UIWebViewNavigationTypeBackForward | ユーザが戻るまたは進むボタンをタップした時 |
| UIWebViewNavigationTypeReload | ユーザがリロードボタンをタップした時 |
| UIWebViewNavigationTypeFormResubmitted | ユーザがフォームを再度サブミットした時 |
| UIWebViewNavigationTypeOther | 上記以外のアクションが生成された時 |
UIDataDetectorTypes †
検出可能なテキストベースのコンテンツの情報の種類を定義する。
| 情報の種類 | 概要 |
| UIDataDetectorTypePhoneNumber | 電話番号でフォーマットされた文字列を検出する |
| UIDataDetectorTypeLink | URLでフォーマットされた文字列を検出する |
| UIDataDetectorTypeNone | データを検出しない |
| UIDataDetectorTypeAll | 利用可能な全てのデータを検出する |