0

別のクラス(クラスBと呼ばれる)のインスタンスを作成するクラス(クラスAと呼ばれる)があります。クラスAIでは、QRコードを読み取るためにカメラを開くクラスBの関数を呼び出します。QRコードが検出されると、次の行を使用してカメラフィードが解除されます。

[[[[[UIApplication sharedApplication] delegate] window] rootViewController] dismissModalViewControllerAnimated:YES];    

現在、クラスAIでは、このイベントハンドラーを使用して他のことを実行したいので(主にQRコードから取得したnsstringを使用)、そのための-(void)dismissModalViewControllerAnimated:(BOOL)animatedメソッドを使用したいと思いました。しかし、私は次のことに気づきました-本体が空のメソッドがある場合、リーダーは却下されません-何かが含まれているメソッドがある場合、アプリケーションは関数を無期限に呼び出し、アプリケーションがクラッシュするか、XCodeがフリーズしてクラッシュします

私がしていることに代わるものはありますか?私は理想的にはそのようなことをしたいです:

-(void)dismissModalViewControllerAnimated:(BOOL)animated{
    [self dismissModalViewControllerAnimated: YES];
    DisplayLabel.text=output;   
}

ありがとう!

4

1 に答える 1

2

superあなたの例は、それ自体を呼び出すので、メッセージをの代わりに渡すつもりでない限り、終了条件なしで再帰につながりますself

于 2012-12-04T16:02:13.297 に答える