0

これが基本的な質問である場合はお詫びしますが、私は Xcode を初めて使用し、ストーリーボード アプリを使用しており、ストーリーボード (セグエなし) にはマップ ビューが埋め込まれたビュー コントローラーがあります。

ストーリーボード画面にタップジェスチャがリンクされた画像があり、タップをテストして動作します(NSLog)が、マップビュービューコントローラーを起動してx&yにズームする方法を知りたいです。

私のコードは現在

-(IBAction)handleMapTap:(UIGestureRecognizer *)sender {   
    NSLog(@"Tapped");  
 }

& 私が試してみました;

MMMapViewController *mapViewController = [[MMMapViewController alloc] initWithNibName:@"MapView" bundle:nil];
[self.navigationController pushViewController:mapViewController animated:YES];

ビュー コントローラーには MMMapViewController として設定されたクラスがあります。ビュー コントローラーに MapView のストーリーボード ID を指定しました (必要な場合)。

多くのスタックオーバーフローの記事を読みましたが、答えが見つからないようです。誰かが助けてくれれば、本当に感謝しています。

4

1 に答える 1

0
-(IBAction)handleMapTap:(UIGestureRecognizer *)sender 
{
    MMMapViewController *mapViewController = [[MMMapViewController alloc] initWithNibName:@"MapView" bundle:nil];
    //[self.navigationController pushViewController:mapViewController animated:YES];
     [self presentModalViewController:mapViewController animated:YES];
    [mapViewController release];
}

それが実際にUIViewControllerである場合、self.navigationControllerがnilでないことを確認すると、おそらくselfが何であるかを知るのに役立ちます。私が知る限り、あなたは実際に正しいコードを持っていますが、シナリオによっては、mapViewをモーダルビューコントローラーとして提示することで逃げることができます。

于 2013-02-25T17:11:51.210 に答える