0

アプリの起動時に表示されるメインビューコントローラーがあり、画像キャプチャ用の中央に上げられたボタンが付いたタブバーが含まれています。UIimagepickerコントローラーを備えたモデルビューコントローラーを提示しました。画像をアップロードした後、モデルを閉じて、メインビューコントローラーで(UIimagepicker)のメソッドを呼び出す必要があります。

そのために私はこの.hファイルのようなコードを書きました

ViewController *viewController;
@property (retain) ViewController *viewController;

.mファイル

    - (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex
{

    if(buttonIndex == 0)
    {

        [self dismissModalViewControllerAnimated:YES];
        [viewController btnTap];

        NSLog(@"uploaded");
    }
    else{
         [self dismissModalViewControllerAnimated:YES];
    }

}

viewcontroller.mで

-(void)btnTap{

         [self.actForImage  showFromTabBar:tabBarController.tabBar];
        // act for image is the action sheet
        // this method will be called when click on the center button of tabbar
 }

ブレークポイントを保持し、-(void)btnTapメソッドが呼び出されていないことを確認しました。メインビューコントローラのメソッドを呼び出す他の方法はありますか?

4

1 に答える 1

1

代表者が答えです!

あなたがする必要があるのはあなたのModalViewControllerでプロトコルをセットアップすることです。また、modalViewControllerで直接閉じるのではなく、delegateメソッドで閉じる必要があります。

この答えをチェックしてください:

ボタンをタップしたときにモーダルビューを閉じることができません

これは、デリゲートクラスのmodalviewcontrollerを閉じる方法です。ViewControllerクラスでそれを閉じた後、他の任意のメソッドを呼び出すことができます。

編集:より広範な答えはコメントに書かれています。

于 2012-05-08T11:07:25.640 に答える