モバイルUIにおけるサイズについて
画面サイズ
モバイル端末の解像度より、実際の解像度と内部で持っている解像度の数値に差異がある
内部で持っている解像度の数値をdp / ptと呼ぶ
各端末形式における、解像度設計の目安(実戦用)
Android:360~400dp を基準設計(横幅)
iPhone:375~430pt を基準設計(横幅)
iPad:820pt以上 設計が必要(レスポンシブ対応)
table:ReactNative タップ領域・文字サイズ目安
目的 推奨サイズ 備考
タップ可能領域 44〜48dp以上 iOS/Android共通で推奨。ミス防止のため広めに取る
本文サイズ 14〜16dp 可読性重視。小さくても12dp以上推奨
見出しサイズ 18〜24dp 目立たせたいなら24dp以上
React Nativeでは基本「数値 = dp」扱い | iOS/Android間で自動スケーリングされる
table: ReactNativeで使用する単位
単位 説明 備考
dp / px(数値) React Nativeでは基本「数値 = dp」扱い iOS/Android間で自動スケーリングされる
Percentage(%) 画面サイズに対する割合指定 レスポンシブ設計に有効
Dimensions API Dimensions.get('window').width 画面サイズ取得。動的レイアウトに使用
StyleSheet に書く数値は「dp(density-independent pixel)相当」として動く
例:width: 100 → 100dp扱い
PixelRatioとスケール計算
React Nativeでは端末ごとのピクセル密度(PixelRatio)を取得・利用可能。
code:js
import { PixelRatio } from 'react-native';
const scale = PixelRatio.get(); // 例: iPhoneなら 2 or 3
モバイル端末
table:各デバイスの推奨サイズのサマリ
目的 Android(dp / sp) iOS(pt) メモ
タップ可能領域 小:48dp 小:44pt 片手操作なら大サイズ推奨
大:56~64dp 大:50~60pt
本文サイズ 小:12sp 小:11pt 小サイズは最低ライン、長文や高齢者向けは大サイズ推奨
大:16sp 大:16pt
見出しサイズ 小:18sp 小:17pt(iOS標準) 強調したいなら大きめが◎
大:24~28sp 大:22~28pt
table:Android端末の単位系
単位 読み方 主な用途 特徴・備考
dp(dip) density-independent pixel UIサイズ 基本単位。画面密度に依存せずスケーリングされる
sp scale-independent pixel 文字サイズ ユーザーの文字サイズ設定に連動する
px pixel 物理ピクセル 基本非推奨。ピクセル密度によって見え方が変わる
pt / in / mm ポイント / インチ / ミリ 印刷系 or 特殊用途 実用ではほぼ使わないが存在はする
実運用のポイント
UIサイズ指定 → dp
文字サイズ指定 → sp
物理ピクセル操作は非推奨(計算ミスしやすい)
table:iOS端末の単位系
単位 読み方 主な用途 特徴・備考
pt point UIサイズ / 文字サイズ iOSの基本単位。解像度に依存せずスケーリングされる
px pixel 物理ピクセル Retinaなど高解像度端末だと「1pt = 2px or 3px」になる
CGFloat シージーフロート 数値型(単位ではない) レイアウトや計算時によく使われる型
実運用のポイント
UIも文字も pt(ポイント) 指定が基本
画像やピクセル計算時のみ px を意識する
1ptの物理サイズは端末によって違う(UIScreen.main.scale で取得)
---
資料
アプリのユーザー補助機能を強化する | Android Developers
操作対象の各UI要素には、少なくとも48dp×48dpのタップターゲットサイズを推奨
複数画面向けのレイアウト - Android Developers
dpはdensity-independent pixel、spは文字サイズ用でユーザー設定に追従する
Androidでよく使うdp指定まとめ - Qiita
タッチ操作可能な部品は余白を含めて48dpを最小単位とするべき
Touch Targets - Apple Human Interface Guidelines
すべてのタッチターゲットは44pt以上必要
Typography - Apple Human Interface Guidelines
視認性確保のため文字サイズは最小11pt以上推奨
TouchableOpacity - React Native
タップ領域は44dp以上確保するのがベストプラクティス
Text Style Props - React Native
文字サイズは14sp〜16sp程度が可読性の目安
PixelRatio - React Native
PixelRatio.get() でデバイスのピクセル密度を取得可能
Dimensions - React Native
Dimensions APIでデバイスの画面サイズを取得しレイアウトに活用
モバイルでのターゲットサイズ(Target Size)のデザインと向き合う - note
モバイルターゲットサイズは48px(約9mm)が基本、押しやすさ優先
iOSのUIガイドライン Human Interface Guidelines を読んでみる part3 - Qiita
iOS HIGでは最小タップ領域44pt、文字は11pt以上が読みやすい基準
モバイルUIにおけるフォントサイズ
16px〜18px
モバイルアプリに最適なボタンサイズと間隔とは
42px〜72px, 60px推奨
現代のモバイルゲーム開発者が向き合うべき ディスプレイ事情と、その対応方法 | Alto-tascal