問題タブ [uisearchdisplaycontroller]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ios - UISearchDisplayController の背後で UITableView をリロードする
まったく理解できない、この本当に奇妙な現象に出くわしました。UITableView を管理する UITableViewController があります。ものすごく単純。また、テーブル ビューのコンテンツを検索するための UISearchDisplayController もあります。検索機能により、テーブル ビューで表示されたコンテンツのアイテムを削除できます。したがって、ユーザーが検索中に見つけた項目の 1 つを削除することを選択した場合、UISearchDisplayController のテーブル ビューだけでなく、UITableViewController のテーブル ビューもリロードしたいと考えています。これを行うと、通常のテーブル ビューのセクションが飛び出し、UISearchDisplayController の上に表示されます。それは本当にかなり奇妙です。それを説明する最良の方法は、画像を使用することだと思います:
この問題の原因を知っている人、または回避策を知っている人がいれば、それは素晴らしいことです。
objective-c - iphone UISearchDisplayController の結果を非表示にしますか?
現在、UISearchBar と UISearchDisplayController を次のように実装しています。
ユーザーが何かを入力して検索すると、バックグラウンドで tableView の上に tableView が表示されます。
この「searchResults tableView」を非表示にする方法はありますか? (バックグラウンドテーブルにデータを保持させたいだけです..現在はそうしています)。
つまり、プロパティはありますか?たとえば、searchDisplayController.tableView.visible=NO などですか?
iphone - UISearchBar と SearchDisplayController を使用して UINavigationBar が消える
これが私のシナリオです:
(1) 次のような TabBarController があります。
(2) ナビゲーション コントローラーは、UISearchDisplayController と共に UISearchBar を使用しています。
(3) 検索バーをクリックして検索を入力し、キーボードの [検索] をクリックしてキーボードを閉じると、検索結果が表示されたままになります。
(4) 次に、タブ #1 をクリックします。
(5) 次に、「メモリ警告をシミュレートします」
(6)。クリックしてタブ #0 に戻ります
(7)。UiSearchBar で [キャンセル] をクリックします。
(8)ほら!ナビゲーション バーがなくなりました。ない。いない。
何か案は?
ありがとう、
マイク
iphone - iPhone - UISearchDisplayController の「キャンセル」ボタンのテキストを変更
並べ替えの質問: 内の「キャンセル」ボタンのテキストUISearchDisplayController
を「完了」または「閉じる」に変更する方法はありますか?
根拠:
オプションのリストを UITableView
含む があり、各オプションをオンまたはオフにすることができます。
これらのオプションで検索できるようにしたいので、UISearchDisplayController
.
ユーザーはアイテムを検索し、検索結果のアイテムに対してアクションを実行します (つまり、特定のアイテムを選択または選択解除します)。
これが完了すると、ユーザーは前の (未検索の) オプションのリストに戻ります。
問題はUISearchDisplayController
、「キャンセル」ボタンを押すことだけを閉じる方法だということです。ただし、検索バー内で実行されたアクションは保存されるため、ここでは「キャンセル」という言葉は不適切です。
したがって、「キャンセル」ボタンのテキストを「完了」または「閉じる」に変更する方法はありますか?
iphone - UISearchDisplayControllerをUIViewに追加するにはどうすればよいですか?
UISearchDisplayControllerをUIViewに追加するにはどうすればよいですか?InterfaceBuilderは私を許可しません。
iphone - 検索をキャンセルするときに setContentOffset が正しくない
UISearchBar を含むビューがあります。この UISearchBar はページの上部には表示されません。画面の上部から約 90 ポイント下のヘッダー画像の下にあります。
ビューのすべての要素は UIScrollView にラップされます。ユーザーが UISearchBar をタップすると、正しいことが起こります。ビュー全体が上にスクロールされるため、検索バーが画面の一番上に表示され、ビューのコンテンツの上に暗いオーバーレイが表示され、キーボードが上にスライドします。
これまでのところすべて順調です。検索をキャンセルして、すべてのコンテンツを以前の場所に戻したい場合に問題が発生します (UISearchBar が画面の上部に表示されなくなります)。
キーボードが表示されているときにユーザーがキャンセルを押した場合、これを行うことができます。UIKeyboardWillHideNotification をリッスンし、スクロール ビューのコンテンツ オフセットを (0, 0) に戻します。
ただし、ユーザーが一部の検索結果で指をドラッグすると、キーボードが消えて、検索結果をより大きく表示できます。ユーザーがキャンセルを押した場合、検索バーはページの上部に残り、すべてがひどいものに見えます。
UISearchDisplayDelegate に「setContentOffset」コードを入れてみました:
これは機能しますが、検索結果がフェードアウトするまでスクロールが行われないため、見栄えがよくありません (したがって、2 つの別々のアニメーションが表示されます)。
次に、このメソッドを試しました(テーブルビューが非表示になる直前に呼び出されます):
ただし、それは効果がありません。コンテンツ オフセットは変更されません。
任意のヒント?
iphone - searchDisplayController テーブル ビュー スタイルをグループ化に変更しますか?
をsearchDisplayController
検索する がありUITableView
ます。
検索用語を入力すると、検索結果を含む別の用語が表示UITableView
されます。UITableView
ただし、これを PLAIN ではなく GROUPEDにしたい(デフォルトのように)。
どうすればいいですか?
iphone - SearchDisplayControllerにsearchBarが表示されない
xCodeが提供するテンプレートを使用して単純なTableViewControllerを作成しました。次に、Interface Builderを使用してTableViewControllerのxibファイルを開き、tableViewの上部にuisearchdisplaycontrollerをドラッグ/追加します。xCodeは、すべてのアウトレットを自動的に作成してリンクします。xibファイルを保存してアプリを実行しましたが、searchBarが表示されません!
searchBarを表示するには、他に何をすればよいですか?!?
どうもありがとうございます!!!
iphone - UISearchDisplayContoller – 検索バーへの入力時にテーブルのリロードを防ぐことはできません
Web サービスからの非同期結果を処理する検索ディスプレイ コントローラーをセットアップしようとしています。基本的な部分は整っていますが、理解できない非常に奇妙な問題に遭遇しました。
非同期の検索表示コントローラーを装備するように思えますが、実際には次の 2 つのことを行う必要があります。
- searchDisplayController:shouldReloadTableForSearchString に対して NO を返す、および
- searchBarSearchButtonClicked を処理し、テーブルのリロードを開始します。
私はこれらの両方を行っていますが、私が見ているのは、#1 に従って NO を返しているにもかかわらず、検索バーに入力された最初の文字で検索ディスプレイ コントローラーがテーブルをリロードしていることです。入力された後続の文字ではリロードされません。
だから、私の質問は、ユーザーが入力している間に検索ディスプレイコントローラーがテーブルをリロードしようとしないようにするにはどうすればよいですか? (具体的には、最初に入力した文字)
この問題が他のいくつかの質問の一部として言及されているのを見てきましたが、問題に対する直接的な回答は見たことがありません。それを回避するためにたくさんの UI マングリングに頼る前に、何が起こっているのか、何が間違っているのかを理解したいと思います。
これは、問題を示すために私のコードを簡単に要約したものです。これを実行して検索バーに「abcde」と入力すると、「a」と入力した後に結果が「a #0」、「a #2」などとして表示されます。検索ボタンを押すまで、結果は再び更新されません。次に、「abcde #0」、「abcde #1」などと表示されます。もちろん、検索ボタンを押すまでは何も起こりません。
ありがとう!(ちなみに、これは私がここで尋ねた最初の質問です。エチケットのポイントを見逃している場合はお知らせください:)
iphone - UISearchDisplayControllerも利用しながら、UITableView(NSFetchedResultsControllerによって制御される)の行を適切に削除する方法は?
私の iPhone アプリには、(a) NSFetchedResultsController を更新し続けるための機能、(b) 複数のセクション、(c) アイテムを追加および削除する機能など、すべての「機能」を使用する (グループ化されていない) UITableView があります。 、および (d) UISearchDisplayController を使用して、ユーザーがリストを検索できるようにします。リストは非常に長くなる可能性があります。
ユーザーが検索中にアイテムを削除しようとすると、問題が発生します。このエラーが発生しています:Serious application error. An exception was caught from the delegate of NSFetchedResultsController during a call to -controllerDidChangeContent:. Invalid update: invalid number of sections. The number of sections contained in the table view after the update (1) must be equal to the number of sections contained in the table view before the update (21), plus or minus the number of sections inserted or deleted (0 inserted, 0 deleted). with userInfo (null)
アプリが検索モードに切り替わると、通常のセクション数 (アルファベット順、AZ) ではなく、単一のセクション (「検索結果」) に切り替わるという事実から問題が発生しているようです。そのため、アイテムを削除しようとするとき、単純に 1 つのセクション (検索結果) 内にある場合は、セクションの数が多いほど適切なセクション数であると考えています。
フェッチされた結果コントローラーを管理するための私のコードは次のとおりです。この種のアクションを処理する適切な方法を知っていますか?