2

iPadアプリ(iOS 5.1)で作業しており、MKMapViewを使用してアプリに地図を表示しています。

MKUserTrackingModeNone、MKUserTrackingModeFollow、MKUserTrackingModeFollowWithHeadingを使用して、3つの異なるマップ方向モードを切り替えています。これは機能します。

ただし、MKUserTrackingModeFollowWithHeadingからMKUserTrackingModeNoneに切り替えると、マップの方向が北向きにリセットされない(マップの北が画面の上部にある)という問題があります。

iPadの組み込みマップアプリでは、フローは次のようになります。

  1. アプリを起動すると、モードMKUserTrackingModeNoneになり、北向きになります
  2. 向きモードを切り替えると、MKUserTrackingModeFollowに変わり、向きはまだ北になります。
  3. もう一度切り替えると、MKUserTrackingModeFollowWithHeadingに変わり、iPadを向いている/指している方向に応じて地図が回転します。
  4. 向きをもう一度切り替えると、MKUserTrackingModeNoneに戻り、地図は北向きに戻ります。

モードを切り替えるときの向きに関してアプリを同じように動作させたいのですが、上記の手順4と同じように行い、 MKUserTrackingModeFollowWithHeadingからMKUserTrackingModeNoneに切り替えると、向きは回転せずに向きを切り替える直前のままになります北向きに戻ります。

ツールバーに配置された標準のMKUserTrackingBarButtonItemコントロールを使用して方向を切り替えています。

これを解決する方法のアイデアはありますか?

ありがとう!

4

2 に答える 2

0

これを行うために標準のiOSボタンバーアイテムを使用していますか?私のアプリはそうです、そして私がfollowWithHeadingからnonにそれをタップするとすぐにそれは北に回転して戻ります。

于 2012-06-10T19:01:29.867 に答える
0

これは、あまりエレガントではありませんが、機能するクイックフィックスです。

https://stackoverflow.com/a/16576802/2077435

于 2013-05-16T18:31:17.593 に答える