SwiftでiPhone 5の画面サイズを検出・判定する方法
Appleデバイスの画面サイズを検出するのは、実はとてもシンプルなタスクです。iOS SDKに含まれるUIKitモジュールには、ユーザーインターフェースや画面サイズなど、UIに関するさまざまな処理を行うための関数やクラスが多数用意されています。
その中でも、デバイスの画面を扱うのがUIScreenクラスです。
UIScreen.mainは、現在使用しているデバイスのメインスクリーンを返します。さらにこのオブジェクトは、現在の画面の各種プロパティや特徴を取得できるメソッドを持っています。
iPhone 5かどうかを判定する流れ
現在の画面がiPhone 5のものかどうかを調べるには、まず画面サイズを取得し、それを基準値と比較します。iPhone 5の画面の高さは568ポイントです。
ステップ1:現在の画面の高さを取得する
let height = UIScreen.main.bounds.height
ステップ2:高さを比較して判定する
if height == 568 {
print("this is an iPhone 5 screen")
} else {
print("this is some other screen - the size is \(height)")
}
この方法は応用も簡単です。異なる画面サイズをチェックしたり、他のiPhone機種との比較にも使えます。たとえば、以下のようにBool型を返す関数としてまとめることもできます。
func checkIphone() -> Bool {
if height == 568 {
return true
} else {
return false
}
}
上記のコードをiPhone 7 Plusシミュレーターで実行すると、次のような結果になります。

補足:モダンな開発における注意点
なお、UIScreen.mainはiOS 13以降で非推奨(deprecated)となる方向にあり、マルチウィンドウやiPadOSへの対応を考えると、表示中のビューが属するウィンドウから画面情報を取得する方法(例:view.window?.windowScene?.screen)が推奨されます。また、実務のアプリ開発では、画面サイズで特定のデバイスを判別するよりも、Auto LayoutやSize Classesを活用したレスポンシブなレイアウト設計を採用する方が、より堅牢で保守しやすい実装になります。
-
iPhoneで画面を分割する方法|X・11・12・13やiOS 14/15でのやり方を解説
iPhoneはApple社の最も売れている製品の一つであり、人気のiOSオペレーティングシステムをベースに、数多くの実用的な機能を提供しています。その中でも特に注目を集めているのが「分割画面(スプリットスクリーン)」機能です。スマートフォンで常にマルチタスクを行いたいというニーズが高まる昨今、この機能への関心は非常に高くなっています。本記事では、iPhoneにおける分割画面機能とその利用可否について詳しく解説し、iPhone X、11、12、13での画面分割の方法、さらにiOS 14および15での画面分割の手順までご紹介します。 iPhoneで画面を分割する方法 残念ながら、現時点でiPho
-
Windows 11でタスクバーのサイズと位置(向き)を変更する方法【レジストリ編集】
Windows 11のリリースにおける最大の改善点の一つが、中央に配置されたスタートボタンと、より太くなったタスクバーでした。UIの近代化における重要な一歩であることは間違いありませんが、一方でデメリットも存在しました。 まず、Windowsの歴史上初めて、タスクバーが画面下部に固定されるようになった点です。動画編集者など多くの上級ユーザーは、縦方向の作業スペースを最大化するためにタスクバーを画面の左右に移動できなくなったことを不満に思っていました。また、貴重な画面スペースを犠牲にしたくない方のために、本記事ではWindows 11でタスクバーのサイズを変更する手順をステップごとに詳しく解説し