iOSのUIWebViewでモバイルサイトを正しく表示する方法
iOSアプリでUIWebViewを使ってモバイルWebサイトを表示した際、レイアウトが崩れたり、画面サイズに合わなかったりすることがあります。この問題を解決するには、以下の設定を試してみてください。
1. ページの自動スケーリングを有効にする
まず、WebViewにページ全体を画面幅に合わせて拡大・縮小させる設定を行います。
mywebview.scalesPageToFit = YES; mywebview.contentMode = UIViewContentModeScaleAspectFit;
- scalesPageToFit:
YESにすることで、Webコンテンツがビューのサイズに合わせて自動的にスケールされます。 - contentMode:
UIViewContentModeScaleAspectFitを指定すると、アスペクト比(縦横比)を維持したまま表示領域に収まるように調整されます。
2. JavaScriptでズーム倍率を調整する
上記の設定でも表示が大きすぎる・小さすぎる場合は、JavaScriptを実行してズーム倍率を直接制御する方法もあります。
NSString *js = [NSString stringWithFormat:@"document.body.style.zoom = 0.8;"]; [webView stringByEvaluatingJavaScriptFromString:js];
このコードでは、ページのbody要素に対してzoomスタイルを適用し、表示倍率を80%に縮小しています。値は0.5〜1.0など、サイトのレイアウトに応じて自由に調整してください。
補足:UIWebViewからWKWebViewへの移行も検討しよう
なお、UIWebViewはiOS 12以降非推奨(Deprecated)となっており、App Storeへの新規申請では使用できません。現在開発中のアプリでは、後継であるWKWebViewの利用が推奨されています。WKWebViewでは同様のスケーリングを、webView.scrollView.minimumScaleScaleFactorやCSSのviewport設定などでより柔軟に制御できます。
-
予算ゼロでOK!Macの無料ツールだけでApp StoreにふさわしいiOSアプリプレビュー動画を作る方法
はじめに 2014年、AppleはApp Storeに「アプリプレビュー」動画を追加できるようにしました。アプリプレビューは、ダウンロード前にアプリの魅力を潜在ユーザーへ伝えるための最も効果的な手段です。StoreMavenの調査によると、プレビュー動画があるアプリは、ないアプリに比べて約3倍インストールされやすいことが分かっています。 しかし、個人開発者の多くは、プロに制作を依頼する予算がないのが現実です。筆者も最近同じ状況に陥りましたが、調べてみると、無料ツールだけでも高品質なアプリプレビューを作れることが判明しました。 本記事では、以下の流れで順番に解説していきます。 コンテンツの準備
-
スマホを「圏外」にする方法|着信だけを遮断する8つの実践テクニック
忙しい毎日の中で、ふと「スマホから離れてゆっくりしたい」と思ったことはありませんか? 大好きなスポーツ中継やドラマを視聴している最中に鳴り続ける通知音や着信……。こうした中断から解放される時間は、多くのスマートフォンユーザーにとって憧れのひとときでしょう。 そこで今回は、Android・iOS・Windows Phoneいずれにも使える、着信だけを遮断して自分を「圏外」状態に見せるテクニックをご紹介します。ポイントは、メッセージの受信や発信には影響を与えず、着信のみをブロックできることです。 さらに便利なことに、これらの方法を使えば圏外にしている間も、かかってきた着信の情報は後から確認できます