問題タブ [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.
iphone - searchdisplaycontroller: 検索バーのテキストを変更します
問題の簡単な説明: 検索バーにバインドされている検索表示コントローラーを自動的にトリガーせずに、検索バーのテキストを設定したいと考えています。
問題の詳細な説明: 検索バーと検索表示コントローラーを備えた iPhone アプリケーションを使用しています。searchdisplaycontroller はオートコンプリートに使用されます。オートコンプリートには、sqlite データベースを使用します。ユーザーがキーワードの最初の数文字を入力すると、結果が searchdisplaycontroller のテーブルに表示されます。入力されたすべての文字に対して sql select クエリが実行されます。この部分は正常に機能し、文字が入力され、結果が表示されます。
問題は次のとおりです。ユーザーがテーブルから行を選択した場合、検索バーのテキストをオートコンプリート結果テーブルで選択されたテキストに変更したいと考えています。また、検索表示コントローラーを非表示にしたいと考えています。これは機能していません。検索ディスプレイ コントローラーが消えると、検索バーのテキスト ボックスが空になります。何が悪いのかわかりません。テキストボックスのテキストを変更するほど単純なものがこれほど複雑になるとは思いませんでした。
2 つの方法でテキストを変更しようとしました。最初は didSelectRowAtIndexPath メソッド (検索表示コントローラーの検索結果テーブル用) でしたが、それは役に立ちませんでした。検索ディスプレイ コントローラーがアクティブな間 (アニメーション化されている間) にテキストが表示されていましたが、その後はテキスト ボックスが空でした。
searchDisplayControllerDidEndSearch メソッドでも変更しようとしましたが、どちらも役に立ちませんでした。テキストボックスは...再び..空でした。
編集:実際にはテキストは空ではありませんでしたが、アニメーションが消えた後も、オートコンプリート テーブルの結果はまだ残っています。だから結局悪くなる。
code>In this method i call another method which selects the data from sqlite. This part is working.
私の問題が明確でない場合は、私に尋ねてください。あなたの助けが必要です。ありがとうございました
iphone - iPhone SDK: UISearchDisplayController のテーブル ビューのサイズを設定する
バナーの下部に 50 ピクセルを許可しているため、アプリのテーブル ビューは画面全体の高さを占有しません。
検索バーに入力し始めると、検索結果のテーブル ビューが大きくなります。検索バーとタブ バーの間のすべての使用可能な画面スペースを埋めます。これは、最後の検索結果がバナーによって隠されていることを意味します。
UISearchDisplayController で使用されるテーブル ビューのサイズを指定するにはどうすればよいですか? 私が見ることができる境界やフレームのプロパティはありません。
編集してスクリーンショットを追加:
これは、テーブル ビューが IB で設定される方法です。合成されたタブ バーの 50px 手前で終了します。
(出典: lightwood.net )
これは、コンテンツが正常に表示される方法です。ここの一番下までスクロールしました。
(出典: lightwood.net )
検索するとこのように表示されます。繰り返しますが、一番下までスクロールしました。バナー広告を無効にすると、検索表示テーブルがタブバーまで広がっていることがわかります。
(出典: lightwood.net )
iphone - UISearchBar- テーブルをグレー表示せずにスコープを変更しますか?
テーブルをグレー表示せずにスコープの変更を許可するにはどうすればよいですか? 検索フィールドがファーストレスポンダになり、キーボード ポップアップが表示されますか?
スコープに基づいて表示されるデータを更新したいだけです。
iphone - 結果を返すときにディスプレイコントローラーがクラッシュする検索
検索ディスプレイコントローラーを備えたテーブルビューがあります。以前は正常に機能していましたが、最近、特定の検索結果でクラッシュし始めました。ここで私のコードは、名前、年齢、ハンディキャップに基づいてゴルファーを検索します。データはテーブルに正しくロードされています。アクセスしてドリルダウンすると、さらに情報を受け取ることができます。ただし、名前または年齢の検索クエリを入力すると、アプリがクラッシュし、ゴルファーのハンディキャップは正常に返されます。
注: dataSouceArray
はテーブルビューのデータソースでありdataSourceArrayCopy
、検索フィルターでオブジェクトを追加および削除するために使用されるデータの可変コピーです。
どんな助けでもありがたいです、これを読むために時間を割いてくれてありがとう。
search - UISearchDiplayController: テキストを入力せずにすべての結果を表示しますか?
UISearchDisplayController
ユーザーが選択できるオプションの長いリストを表示するために使用されている があります。コントローラーが提供する検索バーを使用して、リストをフィルター処理します。
検索バーにテキストを入力しない限り、結果テーブルを表示できないことを除けば、すべて正常に機能します。検索バーにテキストがない場合でも、テーブルにすべての結果を表示したいと考えています。現時点では、テキストがない場合は、下にあるビューがぼやけているだけです。
これは可能ですか?または、まったく気にせずUISearchDisplayController
、表示する別のテーブルビューに検索バーを配置して、スタックからポップする必要がありますか?
iphone - iPhone で検索終了時のアニメーションを無効にする
簡単に: アニメーションなしでキーボードと searchDisplayController を閉じる方法はありますか?
ユーザーが「キャンセル」を押したときにそれを行うことができましたが、ユーザーが検索フィールドの上の黒い「ウィンドウのようなもの」を押すと (ユーザーがテキストを挿入していないときにのみ表示されます)、アニメーションは常に発生します。デリゲート関数を変更します。
これを制御する方法、または代わりに、ユーザーが黒いウィンドウを押して検索を終了できないようにする方法はありますか?
前もって感謝します。
iphone - NSPredicates、スコープ、SearchDisplayController
いくつかのカスタム オブジェクトと 3 つのスコープ ( All、Active、およびFormer ) を使用して検索を作成します。以下のコードで動作するようになりました:
これはうまく機能し、scope
考慮されます。一度に 4 つのフィールドを検索したかったので、この質問は次のコードを思いつくのに役立ちました。
ただし、スコープは考慮されなくなりました。
私はステートメントをいじったり、ステートメントの最後に などをif
追加したり、無駄に使用したりしてきました。スコープをアクティブにするたびに、一致するものが得られません。AND scope == 'Active'
NSCompoundPredicates
このようなスコープを考慮したアプローチを見たことがあることに注意してください。ただし、それらは1つのプロパティ内のみを検索します。
iphone - UISearchBar の下にスコープ バーを強制する
UISearchBar と UISearchDisplayController があります。すべてうまく機能しますが、スコープ セレクターがテキスト フィールドの下ではなく横に表示されます。これは、デバイスが横向きのときに予想されるアクションであることはわかっていますが、UISplitViewController のマスター ビューに UISearchBar があるため、最終的には次のようになります。
スコープ バーをすべてのインターフェイスの向きでテキスト フィールドの下に強制的に表示する方法はありますか (これは iPad の Mail.app でうまく機能することを知っているので、可能性はありますが、Apple がオプションを非表示にすることを決定したかどうかは誰にもわかりません)。それで)
iphone - UISearchDisplayController と大量のデータでの検索パフォーマンス
を使用して高速検索を実行する最良の方法を見つけようとしていUISearchDisplayController
ます。
36000 を超えるエントリを含む plist ファイルがあります。このファイルをディクショナリにロードし、このディクショナリで検索を実行します。動作しますが、少し遅く、各タッチ イベント間に遅延があります。オートコンプリート効果が欲しいので、タッチ イベントごとに検索をトリガーする必要があります。
次のコードを使用して、スレッドを使用してバックグラウンドで検索を実行しようとしました:
しかし、私のアプリケーションはランダムにクラッシュし、次のメッセージが表示されます:
スレッドを適切に使用していないためだと思います。
私も使ってみ[self performSelector:@selector(filter:) withObject:searchString afterDelay:0.5];
ましたが、アプリケーションのクラッシュにも直面しています。
これを処理する最良の方法は何ですか? 私はスレッドがあまり得意ではありませんが、それが最善の方法だと思いますね。SQLite を使用したソリューションも試しましたが、アプリケーションはまだ応答性が高くありません。
私のデータは実際には郵便番号と都市です (36000 の一意の異なる都市ですが、複数の都市が同じ郵便番号を持つことができるため、6500 の一意の郵便番号)。検索項目を郵便番号または都市名にしたい。1 つの大きな辞書が最適な構造ではないことはわかっています。より効率的にデータを整理するにはどうすればよいですか?
これを手伝ってくれてありがとう。