2016-06-14 18 views
1

私はクラスBからのデータを表示するUIPopoverPresentationcontrollerを提示するViewControllerAクラスを持っています。これはうまくいきます。私がポップで値を選択すると、私はそれを却下したい。私のコードは以下の通りですUIPopOverPresentationcontrollerを解除する

anOptionalMethodはPopOverから選択した値でデータを表示するために呼び出すカスタムデリゲートメソッドです。

-(void)anOptionalMethod:(NSString *)langLocal 
{ 
    [self viewDidLoad]; 
    self.popController.delegate = self; 
    [self.ContPop dismissViewControllerAnimated:YES completion:nil]; 
    self.langShown=YES; 
    lblText.Text=MyValue; 
    [self.view addSubview:lblText]; // This calls viewDidLoad method 
} 

私はviewDidLoadメソッドが呼び出され[Self.view addSubview:MyValue]ViewControllerAに結果を追加します。だからこれは起こるべきではありません。私はpopOverPresentationControllerが親ビューとして機能することを知っているので、この問題が発生しています。だから私を助けてこれを解決してください。プログラム的UIPopoverPresentationcontrollerを却下するには、事前に ありがとう..

+0

あなたが 'ViewControllerA'に' MyValue'をどのように渡しているかをクリアするために 'view controller' ...&show' anOptionalMethod'メソッドを消す前に、 'anOptionalMethod delegate'を呼び出すことを試みてください。 – Simmy

+0

- (void)anOptionalMethod:(NSString *)langLocal { [self.popOverController dismissViewControllerAnimated:はい完了:なし]; self.langShown = YES; [self]; } –

+0

それは間違っていた申し訳ありません.. –

答えて

4

[[vc presentingViewController] dismissViewControllerAnimated:YES completion:NULL]; 

・ホープ、このことができます。

関連する問題