丁寧な記事はこちらで公開しています。7のSafariやメールでは外部キーボードを使用した際に利用できるできるショートカットが以前より充実したことが話題になりました。7ではキーボードショートカットを実装するためのAPIが追加されているので、サードパーティのアプリケーションもキーボードショートカットに対応することができます。特定のキーボードショートカットに応答するには下記のプロパティを実装します。*keyCommandsこのプロパティは`UIResponder`クラスに`readonly`として宣言されているので、`UIView`のサブクラスか、`UIViewController`のサブクラスでgetterメソッドをオーバーライドするのがオーソドックスなやり方になります。Responderになれないので、ビューコントローラに実装する場合は`canBecomeFirstResponder`で`YES`を返すのを忘れないようにしましょう。)ここで返す値は`UIKeyCommand`クラスのインスタンスの配列です。7から新たに導入されました。`UIKeyCommand`のオブジェクトは専用のクラスメソッドを使用して作成します。action:(SEL)action;例えば「コマンドキー+S」というショートカットに対応するには下記のようにします。action:@selector(handleCommand:)]];}`input`パラメータはキー押した時に入力される文字を指定します。`modifierFlags`はコマンド(⌘)キーやオプション(⌥)キー、シフトキーなどの修飾キーの組み合わせをビットマスクで指定します。「コントロールキー+オプションキー+S」というショートカットを表す`UIKeyCommand`のインスタンスは下記になります。UIKeyModifierAlternate`という組み合わせで表現されるのは「コントロールキーとオプションキーを両方押す」という組み合わせであって、コントロールキーまたはオプションキーをどちらか片方だけ押した場合は別のショートカットキーと扱われる点です。`modifierFlags`を指定しなかった場合は単独のキー入力に対応することができます。エスケープシーケンスを利用して`@"\r"`や`@"\t"`をキー入力として指定するとEnterキーやタブキーの入力に応答することができます。キー入力のうち矢印キーとエスケープキーの特別なキーについては専用の定数が用意されています。NS_AVAILABLE_IOS(7_0);これらを組み合わせると、例えば矢印キーでテーブルビューを選択したり、エスケープキーでキャンセル、タブキーで移動など一般のビジネスアプリケーションでよくあるキー操作を実装することができます。下記はサンプルコードとしてほぼすべてのキー入力と修飾キーの組み合わせに反応して、押されたキーの組み合わせを画面に表示するプログラムです。テキスト入力欄(UITextView)の問...2013-11-07親指シフトキーボードが使えるノートアプリ「N+Note」をリリースしました。月別アーカイブはてなブログをはじめよう!KishikawaKatsumiさんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。