2

ストーリーボードが google maps ios SDK v 1.1 でサポートされているかどうか教えてください。奇妙な結果が得られます

マップ用に 2 つのビュー コントローラーが必要です。最初のものは、単一のマップを表示し、ストーリーボードのプッシュ セグエを使用してナビゲーション コントローラーにプッシュすると、まったく問題なくレンダリングされます。

複数のマーカーをロードしている別のマップビューコントローラーがあります。このビュー コントローラーはストーリーボードにもありますが、フェードインするカスタム トランジションを使用して読み込まれます。

loadView メソッドの sdk の例に従ってビューをロードしています。

私はそれに3つの問題があります

1.複数のマーカーを含むマップを初めてロードすると、マップが表示/レンダリングされません。ボタンをタップしてビューを再度表示すると (ビューが読み込まれている場合は何もしません)、マップとマーカーがレンダリングされます。

2.このビューを閉じて、カスタム セグエを使用して別のビューを読み込みます。複数のマーカーを使用してマップ ビューに戻ると、マップビューをビューに割り当てようとすると、loadview メソッドで例外が発生します。

  *** Terminating app due to uncaught exception 'UIViewControllerHierarchyInconsistency', reason: 'A view can only be associated with at most one view controller at a time! View <GMSVectorMapViewBridge: 0x150376a0; frame = (0 0; 320 416); layer = <CALayer: 0x15055cd0>> is associated with <GMMapResultsViewController: 0x10faa2a0>. Clear this association before associating this view with <GMMapResultsViewController: 0xb51ad90>.

3. 最後に、最初のマップ ビュー コントローラーを 1 つのマーカーでロードすると、正常にロードされ、複数のマーカーで 2 番目のマップ ビュー コントローラーに戻ります。マップをレンダリングするときにも同じ問題が発生します。次に、マップ マーカーを選択しようとすると、デリゲートによって処理されません。このマップを初めてロードした場合でも、問題なく動作します。

4

2 に答える 2

2

次のことをすれば、問題が解決するかもしれません...

  • 作業しているViewControllerにUIViewを追加します
  • IDインスペクターでタイプをGMSMapViewに設定します。

次に、他のアウトレットの場合と同じように、コードにcontrolキーを押しながらドラッグします。

これを行うと、Googleマップでの作業が非常に簡単になります。

于 2013-02-25T07:44:28.857 に答える
0

誰かが実用的な例を必要とする場合: Google Maps SDK 1.1.2 with Storyboards. github で見つけることができます: https://github.com/rendulic/GMaps3D

于 2013-04-16T21:26:41.820 に答える