hig-components-controls について
Apple のインターフェース設計向けスキルで、選択・入力コントロールに Apple HIG の指針を適用します。コントロールの選択、状態管理、検証、VoiceOver のアクセシビリティを扱います。
主な機能
- 01コントロールを比較し推奨理由を提示
- 02状態表示と変更タイミングの指針
- 03検証とエラー処理の説明
- 04VoiceOver のラベルとヒントに対応
- 05コントロール別の参考資料を掲載
活用シーン
- 01選択肢に適したコントロールの選定
- 02フォーム入力と状態確定の計画
- 03コントロールの VoiceOver 対応確認
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ sickn33/ agentic-awesome-skills --skill hig-components-controlsインストール後、Claude Code で/hig-components-controlsを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
references/gauges.mdlabels.mdcombo-boxes.mdsliders.mdsteppers.mdpickers.mdrating-indicators.mdcontrols.mdtext-fields.mdtext-views.mdtoken-fields.mdvirtual-keyboards.mdtoggles.mdsegmented-controls.md詳細
Apple HIG:選択と入力コントロール
質問する前に .claude/apple-design-context.md を確認してください。既存のコンテキストを活用し、まだ記載されていない情報だけを質問してください。
主な原則
-
現在の状態を明確に示します。 ユーザーは、何が選択されているかを常に確認できる必要があります。トグルはオン/オフを示し、セグメントコントロールは選択中のセグメントを強調表示し、ピッカーは現在の選択を表示します。
-
標準のシステムコントロールを優先します。 組み込みのコントロールを使うと、一貫性とアクセシビリティを確保できます。カスタムコントロールは学習が必要になり、支援機能が正常に動作しなくなる可能性があります。
-
二値の状態にはトグルを使います。 オンまたはオフです。設定スタイルの画面では、変更はすぐに反映されます。モーダルフォームでは、確認時に変更を確定します。
-
関連性の高い選択肢にはセグメントコントロールを使います。 通常、選択肢は少数です。macOS では複数選択や一時的なアクションにも対応します。コントロールの選択またはアクションの動作に一貫性を持たせてください。
-
連続値にはスライダーを使います。 正確な数値入力が重要でない場合に適しています。範囲の両端には、最小値/最大値のラベルまたはアイコンを表示します。
-
選択肢が多い場合はピッカーを使います。 選択肢が多すぎてセグメントコントロールに収まらない場合に適しています。日付、時刻、構造化データの入力に便利です。
-
少量の値を正確に調整するにはステッパーを使います。 固定された刻み幅で値を増減します。現在の値をステッパーの隣に表示し、適切な最小値/最大値を設定します。
-
短い一行の入力にはテキストフィールドを使います。 複数行の入力にはテキストビューを使います。想定される入力に合わせて、キーボードの種類(メール、URL、数値)を設定します。
-
コンボボックス:テキスト入力+選択リスト。 macOS 向けです。独自の値が有効な場合、値を入力するか、事前定義されたリストから選択できます。
-
トークンフィールド:個別の値を視覚的なトークンとして表示します。 macOS 向けです。メールの宛先、タグ、または個別の項目の集合に適しています。
-
ゲージと評価インジケーターで値を表示します。 ゲージは範囲内の値を示します。評価インジケーターは評価(多くの場合、星)を示します。表示専用です。入力にはインタラクティブなバリエーションを使います。
リファレンス一覧
| リファレンス | トピック | 主な内容 |
|---|---|---|
| controls.md | システムコントロール | コントロールセンター、ロック画面、アクションボタンのコントロール |
| toggles.md | トグル | オン/オフ、即時反映 |
| segmented-controls.md | セグメントコントロール | 2~5 個の選択肢、均等な重み |
| sliders.md | スライダー | 連続範囲、最小値/最大値のラベル |
| steppers.md | ステッパー | 固定刻み、範囲が制限された値 |
| pickers.md | ピッカー | 日付、時刻、多数の選択肢 |
| combo-boxes.md | コンボボックス | macOS、入力または選択、独自の値 |
| text-fields.md | テキストフィールド | 短い入力、キーボードの種類、検証 |
| text-views.md | テキストビュー | 複数行、コメント、説明 |
| labels.md | ラベル | 配置、VoiceOver のサポート |
| token-fields.md | トークンフィールド | macOS、チップ、タグ、宛先 |
| virtual-keyboards.md | 仮想キーボード | メール、URL、数値用のキーボードの種類 |
| rating-indicators.md | 評価インジケーター | 星による評価、表示専用 |
| gauges.md | ゲージ | レベルインジケーター、範囲の表示 |
出力形式
- コントロールの推奨とその理由、および他の選択肢が適さない理由。
- 状態管理 -- コントロールが現在の状態をどのように伝えるか、変更がすぐに反映されるか、確認時に反映されるか。
- 検証方法 -- エラーを表示するタイミングと、ルールの伝え方。
- アクセシビリティ -- VoiceOver 用のラベル、特性、ヒント。
質問する項目
- どのような種類のデータですか?(ブール値、固定された選択肢からの選択、数値、自由形式のテキスト?)
- 選択肢はいくつありますか?
- 対象のプラットフォームは何ですか?(コンボボックスとトークンフィールドは macOS 専用です)
- 設定画面ですか、それともインラインフォームですか?
関連スキル
- hig-components-menus -- 選択コントロールを補完するボタンとポップアップボタン
- hig-components-dialogs -- フォームを含むシートとポップオーバー
- hig-components-search -- テキスト入力パターンを共有する検索フィールド
- hig-inputs -- コントロールとのキーボード、ポインター、ジェスチャーによる操作
- hig-foundations -- コントロールのスタイリングに関するタイポグラフィ、カラー、レイアウト
Raintree Technology が作成 · その他の開発者ツール
使用する場合
このスキルは、概要で説明されているワークフローやアクションを実行する際に適用できます。
例
ユーザーのリクエスト:
iPhone アプリで関連する 5 つのフィルターにピッカーとセグメントコントロールのどちらを使うべきか選び、状態と VoiceOver の動作について説明してください。
制限事項
- タスクが上記のスコープに明確に該当する場合にのみ、このスキルを使用してください。
- 出力を、環境固有の検証、テスト、専門家によるレビューの代わりとして扱わないでください。
- 必要な入力、権限、安全上の境界、または成功基準が不足している場合は、作業を中止して確認を求めてください。
参照範囲
同梱されている Apple のドキュメントは静的なスナップショットです。プラットフォーム固有の実装を行う前に、リンク先の一次資料と対象 OS/API の利用可否を確認してください。controls.md ページが扱うのは WidgetKit のシステムコントロールであり、すべてのアプリ内入力コントロールではありません。評価インジケーターのリファレンスは macOS の NSLevelIndicator について説明しており、編集可能な場合があります。他のプラットフォームのカスタム評価 UI は、別途デザインが必要です。視覚的なラベルはアクセシビリティ名の代わりにはなりません。キーボードの種類やフォーマッターは入力を補助しますが、ロケールを考慮した検証の代わりにはなりません。また、セキュアフィールドは保存データや送信データを暗号化しません。ここでは Apple のランタイムや画像アセットの利用可否をテストしていません。