問題タブ [mklocalsearch]
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 - UISearchbar フィルタリング マップキット MKLocalSearchRequest は特定の場所のみをフィルタリングします
ユーザーが地域内のすべての場所を検索できるようにする MKlocalSearch を使用して UISearchBar を実装しました。場所とその場所に関連付けられているビジネスの名前を保持する Json 形式の情報を解析し、それらの座標に注釈を配置しました。SearchBar で実行したいのは、ユーザーの場所から 75 マイル以内にある注釈を配置した場所のみを検索し、ユーザーが検索した場合に他の場所を認識しないようにすることです。検索ワードは、各 Json オブジェクトに関連付けられた情報でもある clubName にしたいと思います。つまり、クラブ「Roxy」を検索すると、ユーザーが 75 マイル以内にいる場合はフィルターに表示されますが、「home depot」を検索すると、フィルターに表示されます。その場所には注釈が設定されていないため、何も表示されません。これが私の現在のコードです。
ViewController.h
ios - MKlocalSearch マップキットで検索領域を拡張
mapkit と MKLocalSearch を使用して、ユーザーの現在のエリア内のビジネスの場所を検索しています。しかし、この地域は必要なほど大きくないようで、現在の場所をそのビジネスの近くに設定しない限り、一部のビジネスの場所が検索に表示されません。スパンを 75 マイルにしたいのですが、コードでリージョンを拡張する方法について何か提案はありますか? 私は mapkit を使用するのが初めてで、役立つものを見つけることができませんでした。これが私の検索方法です。
ios - MKMapView なしの MKLocalSearch
MKLocalSearch を使用して、ユーザーの位置に関連する結果を含む定義済みの文字列の結果を表示したいと思いますが、これまでに見たすべての例では、ユーザーの場所を設定するために MKMapView が必要または使用され、おそらく検索バーを使用して収集します検索に必要なテキスト。
最初にマップを持たずに、定義済みの文字列で検索を実行し、結果をテーブルビューにロードしたいのですが、これを行う方法の良い例はありますか?
現在使用しようとしているコードなど、詳細を追加するための編集。このコードは、結果の表を生成しません。
さらに編集: 以下のアンナは、問題が UISearchDisplayController にある可能性があることを指摘しましたが、現在のコードを実際のサンプル プロジェクトから直接取り出したので、どこで問題が発生しているのか、またはなぜ UISearchDisplayController が表示されないのかがわかりません。結果。
ヘッダファイル:
実装ファイル:
uitableview - MapKit Local Search to Populate テーブル ビュー
ユーザーが検索バーで場所を検索できるようにする単純なアプリを作成しており、その下のテーブル ビューにローカル検索の結果が表示されます。ユーザーがテーブル ビューから場所をクリックすると、マップ上のその場所に注釈が付けられます。
現在、ユーザーの現在地に注釈を付けるマップ設定があります。私は周りを探し回っていますが、私がやろうとしている特定の方法でそれを行う方法を示すものは何も見つかりませんでした. 私はこれについてどうするかについて混乱してきました。誰でも私を助けることができますか?
私はiOS開発にかなり慣れていません。
私のマップは_mapViewと呼ばれ、テーブルビューは_resultsTableと呼ばれ、私の検索バーは_searchBarと呼ばれます
みんなありがとう!
ios - iOS アプリがローカル検索からスロットルされる
アドレスを検索するアプリにオートコンプリート (新しい文字が追加されるたびに 1 つの検索) を実装していMKErrorDomain error 3
ますMKErrorLoadingThrottled
。Apple devによると、このエラーは次の場合に発生します。
データ調整が有効なため、データはロードされませんでした。このエラーは、アプリが短期間に頻繁にデータを要求した場合に発生する可能性があります。
検索クエリの新しい文字ごとに 1 つずつ、作成されているリクエストの数を正確に把握しています (オートコンプリートが機能することを期待するのと同じように)。確かに、私はタイピングが速いのですが、わずか 10 ~ 15 回のリクエストで限界に達するというのはばかげているように思えます。次の 2 つのソース リファレンスを見ると、なぜ抑制され続けるのかわかりません。
Apple devによると:
アプリまたは開発者 ID ごとのリクエスト制限はないため、適切に作成されたアプリが正しく動作する場合、問題は発生しません。ただし、非常に多くのリクエストを作成する不適切に作成されたアプリでは、スロットリングが発生する可能性があります。
ジェームス・ハワードが WWDC で言ったように:
もう 1 つお話ししたいのは、この API の使用制限です。そのため、アプリケーション ID または開発者 ID の幅広い使用制限がないことを発表できることを嬉しく思います。したがって、多くのユーザーがいるアプリがあり、多くのリクエストを実行したい場合は問題ありません。
うまくいきます。
そして、私たちが行っているスロットリングは、実際にはバグのあるアプリに対する防御の第一線にすぎません。したがって、ルート リクエストまたはローカル検索リクエストを無限ループに入れると、バグが発生し、最終的にはスロットリングされます。
しかし、合理的なことをすると、ユーザーの入力に応じて道案内をするだけで、その例を示したので、それらのいくつかを実行できることがわかります。
1 つのユーザー入力に対して 2 つの方向の要求を行ったように、それで問題ありません。しかし、ユーザーが画面をタップするたびに 10,000 を実行している場合、スロットルが発生します。しかし、それを合理的に保つだけで大丈夫です。
なぜこれが起こっているのかについてのアイデアはありますか??
ios - MKLocalSearch を実行しようとしていますが、特定の半径内でしか検索できません
たとえば、ユーザーの現在地から半径 1 マイル以内でクエリを検索しようとしているとします。これまでの私の検索コードは次のとおりです。
デバイスでコードを実行すると、マップにピンが表示されますが、指定した半径内にありません。また、MKCoordinateRegionMakeWithDistance を使用して検索領域を設定しようとしましたが、二重半径値を CLLocationDistance オブジェクトとしてキャストする方法がわかりませんでした。どんな助けでも大歓迎です。ありがとう。