私はsearchBarをtableViewのフィルタとして使用しています。私はSwift 2.xとiOS9でsearchBarをプログラムで終了する
self.definesPresentationContext = true
を含むいくつかの記事で読んだ は、検索バーを閉じるが、それは私の場合ではありません。 私が達成したいのは、ユーザーがバーをタップすると、いくつかの条件が満たされない場合に閉じる検索を閉じることです。
また、私は結果なしで
searchController.active = falseを
を試してみました。誰でも助けることができますか?おかげ
"私が達成したいのは、ユーザーがバーをタップするとすぐに検索が終了するということです。"いいえ、あなたがしたいことを理解していません。 「いくつかの条件が満たされない」場合は、検索バーが表示され、有効になっているのはなぜですか?これを処理する方法は、ユーザーが検索バーを最初から不適切にタップするのを防ぎ、何かを突然消してユーザーを驚かせることではありません。 – matt
私がsearchBarを表示していない場合、ユーザーは彼がそれをアクティブ化できることをどのように知っていますか?私はタップの後にメッセージを表示することは良いアイデアだろうと思っていた。あなたはよりよい解決策を持っていますか? – Nicholas
「あなたはもっと良い解決策を持っていますか?」私はあなたがより良い解決策を見つけたと思っています。ソフトウェア設計の基本的なルール:ユーザーを驚かせてはいけません、ユーザーを誤解しないで、ユーザーのばかを作らないでください。ユーザーが何もすることができない場合、そのことを行う手段を彼/彼女に与えないでください。逆に、「あなたはばかだ」という警告を出すだけの唯一のインターフェースをユーザーに与えないでください。 – matt