UIViewController
ボタンがタップされた後にモーダルに表示されることを意図したプライマリとセカンダリのアプリケーションがあります。
両方とも、サブビューとして追加された対応するUIViewControllers
独自のものを持っています。この時点まではすべて正常に動作します。GPUImageStillCamera
GPUImageView
ただし、モーダル表示に移動してUIViewController
閉じると、プライマリ コントローラーのカメラは、2 番目のコントローラーを表示する前に残した最後のフレームでフリーズしたままになります。
私が呼ぶものPrimaryViewController
-(void)viewDidAppear:(BOOL)animated{
[super viewDidAppear:animated];
[_stillCamera resumeCameraCapture];
}
-(void)viewDidDisappear:(BOOL)animated{
[super viewDidDisappear:animated];
[_stillCamera pauseCameraCapture];
}
私が私の中で呼ぶものSecondaryViewController
-(void)viewWillAppear:(BOOL)animated{
[super viewWillAppear:animated];
[_stillCamera resumeCameraCapture];
}
-(void)viewWillDisappear:(BOOL)animated{
[super viewDidDisappear:animated];
[_stillCamera stopCameraCapture];
}
メソッドが起動することは 100% 確信しています (ブレークポイントでチェック)。論理的には、最初のカメラは再度表示されたらプレビューを再開する必要がありますが、そうではありません-最後のフレームでフリーズします(pauseCameraCapture
メソッドが呼び出されたとき)。強制的に更新する方法はありますか(再作成する以外に) ? 確認しましたが、割り当ても解除されていません。
私は何が欠けていますか?