私は、専用の検索機能を備えたアプリのタブバーにUITabBarItemを追加するように求められたアプリに取り組んでいます。これは、アプリ全体ですでに組み込まれている検索 (他のUITabBarItemをタップして他のUITableViewを検索することによる) に追加されます。
さて、最初に頭に浮かぶのは、Apple Human Interface Guidelines ( HIG ) で、次のように述べています。
「アプリケーションの主要な機能であり、個別のモードとして機能する必要がある場合を除き、検索にタブを使用することは避けてください。」
したがって、一般的な考えは回避することですが、それは厳格で迅速なルールではありません. それでも、私はこれをクライアントの注意に向けました。彼らは次のように答えました。私の答え: 「Apple 独自のアプリは、この種の検索エクスペリエンスを提供します。既にそれらのアプリを使用している人なら誰でも、あなたのアプリの使い方を知っているでしょう。だからこそ、私たちは UE に一貫性を持たせ、HIG に従うよう努めることを望んでいます。」(言うまでもなく、これはアプリ ストアの承認の要件ですが、余談です。)
彼らの2 番目の回答は次のとおりでした。
結構。グローバル検索です。:)
専用の検索UITabBarItemを使用した例を探して、iPhone 独自の App Store モデルに従いました。結果として得られる UI に非常に満足しています。UISearchBarに入力すると、単純なテキストのみの入力と同時に検索される名前の候補リストが表示されます (検索サーバーを圧倒しないように、入力時間の遅延を最小限に抑えて完了します)。検索テキストを調整したり、候補の 1 つをタップして検索用語の代わりに使用したり、単に [検索] ボタンを完全にタップしたりすることができます。結果リストは、各セルにアイコンと役立つメタデータのビットを含む、より洗練された結果セットに置き換えられ、よりフルテキスト形式で検索されます。いつもの具材。UISearchBar をタップするテキストのみの提案を戻します。検索をキャンセルすると、すべてが削除されます。そのままにしておくと、最後のクエリ (結果リスト) が表示可能になります。
それで私はこれをクライアントに提示しました...そして...彼らはそれを気に入っています!! 最後のリクエストは 1 つだけです。「専用の Search UITabBarItemを選択したときに、キーボードがすぐにポップアップすることはありますか? 今はUISearchBarをタップする必要がありますが、それは 1 回のタップが多すぎます。」
(おそらく、既存の検索が実行されていない場合にのみ、これが発生することを望んでいるでしょう。)
最初はこれはもっともらしいと思いました...しかし、その後、他のアプリを調べました。これを行うものは見つかりませんでした。App Store アプリでも、UISearchBarをタップしてキーボードを表示する必要があります。さらに、HIGは次のように述べています。
「ユーザーが検索バーをタップすると、キーボードが表示されます。」
「ユーザーが検索UITabBarItemをタップすると、キーボードが表示されます」ではありません。
さらに、UI は寛容であるべきです。間違えて [その他]リストで別のアイテムを選択するつもりだった場合はどうなりますか? (または、それが適切なタブ バーにあった場合、別のUITabBarItemを選択するつもりだった場合はどうなりますか?) ここで、検索を停止してキャンセルし、キーボードを表示するつもりがなかったとしても、キーボードを閉じる必要があります。
結論として、私は少し引き裂かれており、ベスト プラクティスやその他の POV についてのアイデアを得たいと考えています。この状況であなたはどうしますか?