

高岡智則
年齢:33歳 性別:男性 職業:Webディレクター(兼ライティング・SNS運用担当) 居住地:東京都杉並区・永福町の1LDKマンション 出身地:神奈川県川崎市 身長:176cm 体系:細身〜普通(最近ちょっとお腹が気になる) 血液型:A型 誕生日:1992年11月20日 最終学歴:明治大学・情報コミュニケーション学部卒 通勤:京王井の頭線で渋谷まで(通勤20分) 家族構成:一人暮らし、実家には両親と2歳下の妹 恋愛事情:独身。彼女は2年いない(本人は「忙しいだけ」と言い張る)
uiwebviewとは?初心者にもわかる使い方と基本
uiwebviewはiOSアプリの中でウェブページを表示するための部品です。アプリの中で外部のサイトやHTMLをそのまま表示できるので、情報をアプリ内で見せたいときに使われてきました。
ただし現在は新しい技術が推奨されています。具体的にはWKWebViewという別の部品があり、パフォーマンスやセキュリティの点で優れているため、iOSの新規アプリ開発ではUIWebViewの使用は控えるべきです。
UIWebViewを使っていた時代には、URLを読み込んだり、HTML文字列を直接表示したりすることが可能でした。読み込みの仕組みとしては、ウェブページを借りて来て表示するイメージです。表示領域のサイズやスクロールの挙動を細かく設定することもできます。
基本的な使い方の考え方
初心者の方は、まず「外部のサイトをアプリ内に表示する」という目的をはっきりさせましょう。そのうえで今はWKWebViewを使うのがベストです。UIWebViewの代わりとして新規プロジェクトで使う理由は少なく、既存のアプリを維持するときのみ必要になることが多いです。
以下は概念的な流れです。①表示領域を用意する、②URLを読み込む、③必要に応じてJavaScriptと連携する、という順序です。コードの細かい書き方は別の回で解説しますが、問題になるポイントは読み込みの安全性とパフォーマンスです。
UIWebViewとWKWebViewの違い
| 観点 | UIWebView | WKWebView |
|---|---|---|
| パフォーマンス | 旧世代のレンダリングエンジン | 高速でスムーズ |
| セキュリティ | 制限が多い | 最新の保護機能を多く搭載 |
| 開発の推奨 | 非推奨(古いプロジェクトのみ) | 推奨 |
| サポート状況 | 新規サポートは限定的 | 活発 |
実務の現場でのポイント
iOSの新規開発ではUIWebViewを使わないことをまず前提にしましょう。代替はWKWebViewで、もし古いアプリの保守が必要なら移行計画を立てると良いです。
- よくある質問
- UIWebViewは現在どのくらい使われていますか?
新しいアプリではほとんど使われず、WKWebViewが主流です。 - UIWebViewを今後も使えますか?
公式には非推奨となっており、サポートは限定的です。
まとめとして、UIWebViewは過去に重要な役割を果たしましたが、現在はWKWebViewへの移行が進んでいます。初心者はまずWKWebViewを学ぶこと、そしてUIWebViewは知識の補足として抑える程度にとどめるのが安全です。
uiwebviewの同意語
- UIWebView
- iOSでWebコンテンツを表示するための古いクラス。現在は非推奨で、代替はWKWebViewです。
- uiwebview
- UIWebViewと同義の表記。小文字で書かれることもあり、同じく古いウェブ表示機能を指します。現在は非推奨です。
- UI Web View
- UIWebViewの別表記。iOSアプリ内でWebページを埋め込むための古い仕組みです。
- iOS WebView
- iOSプラットフォーム上でWebページを表示する機能全般を指す表現。実装はUIWebViewまたはWKWebViewを指す場合が多いです。
- WebView (iOS)
- iOS向けのWeb表示コンポーネント。UIWebViewの旧世代とWKWebViewの新世代を含む総称として使われます。
- WKWebView
- UIWebViewの代替となる新しいウェブビュー。パフォーマンスとセキュリティの向上を目的として採用されます。
- WebView
- ウェブページを表示する一般的な要素・概念。iOSだけでなく他のプラットフォームでも使われる総称です。
- iOSウェブビュー
- iOSでWebコンテンツを表示する機能の表現。UIWebViewの旧表現やWKWebViewを含む総称として使われます。
uiwebviewの対義語・反対語
- ネイティブUI
- ウェブ技術を使わず、OSのネイティブ部品だけで作られたUIのこと。UIWebViewのウェブ表示の対義語としてよく使われます。
- ネイティブビュー
- ネイティブのUI部品のみで構成された画面のこと。WebViewを用いず、ネイティブ要素だけで実装する点が対義語として挙げられます。
- ウェブを使わない表示
- HTML/CSS/JavaScriptを使わず、ネイティブのUI部品だけで表示される画面の意味です。
- ウェブビューなしUI
- UIを構築する際にWebViewを使わず、ネイティブ部品だけで実装されたUIのことを指します。
- ネイティブのみのUI
- Web技術を排除し、完全にネイティブの部品で設計されたUIの意味です。
- HTML不要UI
- HTMLを使わず、ネイティブUIで表示される設計のことを指します。
uiwebviewの共起語
- WKWebView
- UIWebViewの後継として推奨される、WebKitを使ってHTMLを表示する新しいWebビュー。パフォーマンス向上とセキュリティ改善が特徴で、現在のiOSアプリ開発で主流です。
- WebKit
- Webページを表示するためのレンダリングエンジン。UIWebViewは内部でWebKitを使っていましたが、現在はWKWebViewへ移行が進んでいます。
- UIWebView
- iOSでHTMLを表示する旧式のWebビュー。現在は非推奨で、代替としてWKWebViewの利用が推奨されています。
- iOS
- AppleのモバイルOS。UIWebViewを含むアプリ開発の対象プラットフォームです。
- Objective-C
- UIWebViewを操作するコードが多く書かれていた主要な言語。
- Swift
- 現代のiOS開発で主に使われる言語。UIWebViewからWKWebViewへ移行する際にもSwiftが使われます。
- loadRequest
- UIWebViewでURLを読み込むためのメソッド。NSURLRequestを渡してページを表示します。
- loadHTMLString
- HTML文字列を直接読み込むUIWebViewのメソッド。
- stringByEvaluatingJavaScriptFromString
- UIWebViewでJavaScriptを実行して結果を返す古いメソッド。WKWebViewでは別の評価手段を使います。
- UIWebViewDelegate
- UIWebViewのイベントを受け取るためのプロトコル。ページの読み込み開始・終了などを通知します。
- webViewShouldStartLoadWithRequestNavigationType
- 新しいページの読み込みを開始して良いかを判断するUIWebViewのデリゲートメソッド。
- webViewDidFinishLoad
- ページの読み込みが完了したタイミングを通知するデリゲートメソッド。
- webViewDidFailLoadWithError
- 読み込み中にエラーが発生した場合に呼ばれるデリゲートメソッド。
- HTML
- Webページの基本となるマークアップ言語。UIWebViewを使ってHTMLを表示します。
- JavaScript
- Webページの動作を制御するプログラミング言語。UIWebView内のコンテンツ操作にも使われます。
- CSS
- HTMLの見た目を整えるスタイルシート言語。UIWebView内のHTML表示にも適用されます。
- URLRequest
- 読み込むURL情報を表すオブジェクト。loadRequestで渡す際に使います。
- Deprecated
- 非推奨・廃止方針の状態。UIWebViewはWKWebViewへ移行すべきとされています。
- InAppBrowser
- アプリ内でWebページを表示する仕組みの総称。UIWebView/ WKWebViewがその実装として使われます。
- Xcode
- iOSアプリ開発の統合開発環境。UIWebViewのコード作成・デバッグにも用いられます。
- UIKit
- iOSアプリのUIを構築するフレームワーク。UIWebViewはUIKitのUI部品として使われてきました。
uiwebviewの関連用語
- UIWebView
- iOSで旧来から使われていたウェブ表示用のビュー。WebKitを内部で利用しますが、パフォーマンス・安定性・セキュリティの点でWKWebViewへ置き換えが推奨され、iOS 12で非推奨、将来の削除が予定されています。
- WKWebView
- iOS 8以降の新しいWebビュー。WebKitをベースに高速・安定・安全。JavaScriptブリッジやナビゲーションの制御が可能で、UIWebViewの主な代替として推奨されています。
- WebKit
- Appleが開発するオープンソースのWebレンダリングエンジン。SafariやWKWebViewの核となり、HTMLの解釈・CSSの適用・JavaScriptの実行を担います。
- WKNavigationDelegate
- WKWebViewのページ読み込み・遷移のイベントを処理するデリゲート。ページ開始・完了・失敗やリンクのブロックなどをカスタムできます。
- WKUIDelegate
- WKWebViewのUI関連イベントを処理するデリゲート。アラートや確認ダイアログ、テキスト入力などのUIをカスタマイズします。
- UIWebViewDelegate
- UIWebViewの読み込み状態やエラー通知などを扱うデリゲート。現在は非推奨で、WKWebViewへの移行が推奨されています。
- SFSafariViewController
- アプリ内で Safari と同じUI・機能を提供するビューコントローラ。クッキー共有やログイン状態を維持し、同一アカウント情報を利用しつつ安全にウェブを表示する用途に適しています。
- JavaScriptCore
- JavaScriptを実行・評価するエンジン。WKWebView内でネイティブとWebの橋渡しを行う際に活用します。
- HTML
- Webページの基本構造を定義するマークアップ言語。UIWebViewやWKWebViewはHTML/CSS/JSで表示される内容をレンダリングします。
- CSS
- Webページの見た目を決めるスタイルシート言語。HTMLと組み合わせてコンテンツのレイアウトやデザインを制御します。
- JavaScript
- Webページに動的な動作を追加するプログラム言語。WKWebView内で外部のJSを実行したり、ネイティブとデータをやり取りする際に活用します。
- WebView
- ウェブコンテンツをアプリ内に埋め込んで表示するUI要素の総称。iOSでは WKWebView が標準的。
- UIWebViewからWKWebViewへの移行ガイド
- UIWebViewからWKWebViewへ置換する公式の移行ガイド。APIの差分・ロードの挙動の違い・コード例などを解説しています。



















