問題タブ [mkoverlay]

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.

0 投票する
2 に答える
4374 参照

ios - パス描画を使用してテキストを追加する方法はありますか

MKOverlayPathViewから継承するマップカスタムビューがあります。円、線、テキストを表示するには、このカスタムビューが必要です。

パス描画CGPathAddArc関数とCGPathAddLineToPoint関数を使用して、すでに円と線を描画することができました。

ただし、テキストを追加する必要があります。

を使用してテキストを追加しようとしました

しかし、無効なコンテキストエラーが発生しました。

何か案が?

0 投票する
0 に答える
296 参照

iphone - mkpolylineviewの線の形を変えることはできますか?

mkpolyline ビューで、直線ではなく有向の矢印線を表示できないかと考えています。

これらの線をオーバーレイとして使用しています。矢印の線をオーバーレイとして表示する方法を教えてください。

これには mkpolyline または mkoverlay をサブクラス化する必要がありますか? どうすればいいのかわからない... 助けてくれてありがとう

0 投票する
1 に答える
545 参照

iphone - オーバーレイ ビューで線が描画されない

オーバーレイ ビューで 2 点間に直線を引こうとしています。MKOverlayView メソッドでは、私は正しくやっていると思いますが、線が描画されない理由がわかりません...

誰かが理由を知っていますか?

ご協力ありがとうございました。

0 投票する
1 に答える
324 参照

mkmapview - MKMapKit の回転

MapKit を使用して MKMapView を回転させようとしています。

地図を表示して回転させることはできますが、あまり効率的ではありません。ビューよりも大きな MKMapView を作成し、CGAffineTransformMakeRotation を使用して回転させるため、ビューの背後にある灰色の領域は表示されません。Interface Builder でクリップのサブビューをチェックしましたが、これは正しい実装ではないと感じています。

このメソッドでは、MKPinAnnotationView が CGAffineTransformMakeRotation 関数に準拠しているため、表示される注釈を回転させることができますが、マップにオーバーレイを追加しようとすると問題が発生します。

クラス宣言でboundingMapRectプロパティを使用してオーバーレイを配置できますが、画像はディスプレイ上で回転されません。これを達成する方法はありますか?または、別の方法で MKMapView と注釈を回転させる必要がありますか?

アドバイスや情報をお寄せいただきありがとうございます。

0 投票する
1 に答える
1218 参照

iphone - Google Directions API ポリラインが地図に追加されない

Google Directions API の使用に問題があります。JSON 文字列を取得して解析し、overview_polylines 文字列を取得しています

これは機能します。マップに追加できなくて困っています。私はこの投稿http://iosguy.com/tag/directions-api/を使用しています。これはまさに私が求めているものと思われます。

私は実装しました

メソッド、そしてそれはうまくいきます。結果を NSLogged すると、CLLocation オブジェクトを出力しているかのように表示されます。

問題は、マップに表示できないことです。これは次のコードです

また、明示的な呼び出しを追加しようとしました

つまり:

最後のメソッドが呼び出され、NSLog を使用して確認しましたが、マップには何も表示されません。

何かご意見は?前もって感謝します!

0 投票する
3 に答える
1804 参照

ios - viewforoverlayが呼び出されることはありません

これは私を狂わせています。私はstackoveflowのすべての投稿を確認しましたが、法案に適合するものはありません。にオーバーレイとして単純なポリライン(つまり、カスタムオーバーレイではない)を追加しようとしていMKMapViewます。viewForOverlayデリゲートのメソッドが呼び出されることはありません。マップデリゲートは、他のすべてのデリゲート関数に対して正しく呼び出されます。viewForOverlayメソッドのコードは次のとおりです。

ポリラインを作成してマップに追加するコードは次のとおりです。

ポリラインには実際に私のポイントのコレクション(約1000)があるので、問題はないと思います。マップビューに必要なプロパティやその他の実装がありませんか?

EDITポリラインMKMapPoint生成のコードを表示します。

appConfigプロセスの一部としてポリラインを生成するために、約1100ポイントのxmlファイルを使用します。とを使用してファイルを読み取り、解析しNSXMLParserますNSXMLParserDelegate。(プロトコルのfoundCharactersメソッドから)ポイントを生成するコードは次のとおりです。NSXMLParserDelegate

ここに、ポイントが実際にを生成し、MKPolylineそれをmapViewに(プロトコルのdidEndElementメソッドから)提供する場所があります。NSXMLParserDelegate

のポイントカウントプロパティMKPolylineは、実際には1100ポイントあることを示しています。

編集:サンプルXML値:

0 投票する
1 に答える
737 参照

iphone - 2 つの MKPolylineView を追加

MKOverlayView に異なる色の 2 つの異なる MKPolylineView を追加するのに問題があります。これを達成する方法についてのアイデアはありますか?ありがとう

これが私のコードです:

0 投票する
1 に答える
1097 参照

ios - userlocation が有効な場合、MKMapView の mapView:viewForOverlay: が呼び出されないのはなぜですか?

MKMapView にいくつかの MKPolygon を追加しましたが、MKMapView によって問題なく表示されます。この MKMapView の userLocation を有効にし、ユーザーが自分の場所のアクセス許可を付与した場合、デリゲートは呼び出されず、オーバーレイも描画されません。次の viewDidLoad の後、デリゲートは再び正常に動作し、すべてのオーバーレイが表示されます。

したがって、ユーザーが自分の場所の許可を与えるように求められた場合にのみ、問題が発生するようです。

誰かがこの奇妙な動作の説明/解決策を持っていることを願っています, ありがとう.

アップデート

私が知ったように、それはユーザーの場所とは何の関係もありません。どういうわけか、MKMapView はオーバーレイを描画するためのデリゲートを呼び出していませんが、アプリの最初の起動時の初期ビューである場合に限ります。その後、すべてが機能します。

0 投票する
1 に答える
5845 参照

objective-c - 複数のオーバーレイを MKMapView に追加する

MKMapView に複数のオーバーレイを追加する方法を理解するのに苦労しています。

アレイルートを追跡しています。追跡されるルートは、CLLocations の配列です。だから私は配列の配列を持っています。

1 つのルートを取り、マップ ビューに描画することができます。ただし、マップ ビューにすべてのルートを描画する必要があります。

したがって、1 つのルートの MKPolyline を作成する方法は次のとおりです。

オーバーレイを返す MapKit デリゲート呼び出しは次のとおりです。

したがって、上記のコードはすべて正常に機能します。他のルートを表示するためにオーバーレイをさらに読み込む方法がわかりません。

おそらく loadRoute メソッドで、すべてのルートを実行し、それぞれに MKOverlayView を作成すると思いました。これらすべての MKOverlayView を配列に格納してから、次のようにします。 [self.mapView addOverlays:array];

しかし、うまくいきません。問題は、デリゲート メソッドで、どのオーバーレイを返すかを何らかの方法で知る必要があることです。

したがって、次の行に沿って何かを行うことができれば:

それはうまくいくでしょう。しかし、残念ながらそのようには機能しません:(

どんな助けでも大歓迎です!

編集:

これを ViewDidLoad で使用して、オーバーレイを追加します。

これはヘッダーにあります:

0 投票する
1 に答える
3471 参照

ios - MKMapView - マップのスクロールを正方形のオーバーレイに制限する

次のように記述された正方形のオーバーレイを持つ MKMapView があります。

ユーザーがオーバーレイの外にスクロールするのを制限したい。

そのための MKMapView スクロール ビューを制限できますか? それとも他の方法がありますか?

ありがとう

シャニ