7

本質的に線形に編成された情報を表示する iOS アプリケーションがいくつかあり、ユーザーは画面上のコントロールを使用してデータを前後に移動できます。キーボードドックまたはペアリングされたBluetoothキーボードを使用しているユーザーが、矢印キーを使用して前後に移動できるようにしたいと思います. アプリは全画面表示であるため、副作用としてオンスクリーン キーボードが表示されるリスクがないことは、ユーザー エクスペリエンスにとって非常に重要です。

Apple のドキュメントには、これを可能にする API が見つかりません。しかし、正しい検索用語を使用したかどうか確信が持てません。

これを実現できる API はありますか?

更新:これは、 Apple のバグ報告サイトの拡張機能として取り上げました。

4

4 に答える 4

3

UIKeyInputとを参照すると、どの矢印キーが押されているかを簡単に判断できますUIKeyInputDelegate。あなたが具体的に探している方法はですpositionFromPosition:inDirection:offset:

そのメソッドが呼び出された後(iOSによって選択範囲を決定するために使用されます)、次にが呼び出されますsetSelectedText:NSLogそれがどのように機能するかを決定するためにステートメントを入れてくださいpositionFromPosition:inDirection:offset:(あなたは配管に責任があります)。

SimpleTextInputも見てください。これにより、サブクラス化に関するテンプレートが提供されますUITextInput

于 2012-07-19T19:17:22.440 に答える
3

外部キーボードの矢印キーにどのように応答できますか?の答え -隠しテキストフィールドを作成し、選択の変更に反応します-私にとってはうまくいきました。

于 2012-08-19T17:07:10.893 に答える
0

左右のスワイプまたはドラッグ ジェスチャのサポートを追加するだけでキーボードを完全になくすことができ、ユーザーは基本的にアプリをフォト ギャラリーのように扱うことができます。オンスクリーン コントロールは必要ありません。これはデバイス ネイティブのナビゲーション パラダイムであり、アプリの起動時のスプラッシュ スクリーンで簡単に説明できます。

ただし、他のアプリのデータ収集機能をサポートするために外部キーボードが必要な場合、ユーザーは「ゴリラ アーム」の問題を経験します...

于 2011-03-31T18:42:40.073 に答える
-1

実際にはわかりませんが、答えは「できません。公式の方法ではありません」だと思います。

Appleによると、ユーザーフレンドリーなUIはiPadプラットフォームの最優先事項であるため、利用可能なキーボードに依存する動作を思いとどまらせるためにできることをしていると思います. アプリは、ハードウェア キーボードの有無にかかわらず、同じように動作し、同じ機能を提供する必要があります。そのため、画面上の要素を使用しないキーボードのホットキーやナビゲーションなどは、おそらく禁止事項です。

しかし、私が言ったように、これは単なる憶測です。

于 2010-10-16T08:57:02.920 に答える