上部にテキストフィールド、その下にテキストビュー、テキストビューの下に2つのボタンがあるビューがあります。
キーボードは「完了」ボタンで構成されています。ユーザーが情報を入力したら、テキストビューの下にある[保存]ボタンをクリックします。まず、[完了]をクリックしてキーボードを非表示にし(そして保存ボタンを表示し)、次に[保存]ボタンをクリックします。
テキストビューでキャリッジリターンを許可する必要がありますが、「リターン」はすでにDoneによって処理されています。
Returnキーとキーボードを非表示にする機能が必要な場合、通常はどのように処理されますか?
UINavigationBarを使用している場合、または他のボタンやフィールドがある場合は、これらのUIControlのいずれかをアクティブ化することを検出し、resignFirstResponder()を介してキーボードを閉じるために使用できます。実際、Save / Cancel / DoneはUIBarButtonItemsであり、物事を完了して状態を変更するための標準的なメカニズムであり、必要なことを達成するためのフレームワークを作成します。そのアプローチを採用しない場合は、その方法を工夫する必要があります。また、何をする必要があるかをユーザーに明確にする必要があります。
Interface Builderでは、メインビューのタイプをUIViewからUIControlに変更してから、addTarget()を使用してタッチイベントを「タッチアウトサイド」領域として検出し、それらのアクションを使用してファーストレスポンダーを辞任することもできます。ただし、状態遷移を行うために、UINavigationBarまたはその他のボタンバーまたはタブインターフェイスを検討することをお勧めします。
iOSヒューマンインターフェイスガイドラインのドキュメントも確認してください。これは、iOSがあなたが扱っているもののような一般的な状況を処理するようにどのように設計されているかを理解するための素晴らしいドキュメントであり、設計の轍から抜け出すことができます。それはよく書かれていて、定期的に再訪する価値があります。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加