0

カメラビューを閉じるのに少し問題があります。このコードでUIImagePickerControllerを使用しています-

-(void)viewDidAppear:(BOOL)animated{
UIImagePickerController *picker=[[UIImagePickerController alloc]init];
picker.delegate=self;
picker.sourceType=UIImagePickerControllerSourceTypeCamera;
picker.showsCameraControls=NO;
[picker.cameraOverlayView addSubview:mirrorOverlay];
picker.modalTransitionStyle=UIModalTransitionStyleFlipHorizontal;
[self presentModalViewController:picker animated:YES];
[picker release];}

カスタムボタンを使用してカメラを閉じ、このコードを使用してビューをメインビューに戻します-

-(IBAction)flipBack:(id)sender{
[self dismissModalViewControllerAnimated:YES];

私の問題は、ビューフリップアウトのボタンを押してから、戻ってカメラを再度呼び出すときです。カメラとビューを閉じる方法が見つかりません。

助けてください。ありがとう、アミール。


更新: 助けてくれてありがとう! 私はそれを理解します!私の問題は、カメラの nib ファイルを操作していたことでした。デリゲートで説明されている別の方法でカメラを使用する場合は、nib ではなく View を使用する必要があります。

私のコードは正しいのですが、場所と形式が間違っていました。皆さんありがとう !

誰かがそれについて助けが必要な場合は、私が助けに来ます!

4

3 に答える 3

1

ピッカーを非表示にする必要があります。見た目からすると、ピッカーを表示するコントローラーを非表示にしています。

-(IBAction)flipBack:(id)sender{
    [picker dismissModalViewControllerAnimated:YES];
}

この場合、 への参照を保持する必要がありますpicker(例: UIImagePicker *picker; を viewcontroller クラスのメンバーとして追加します)。

于 2011-07-22T12:03:57.477 に答える
1

viewDidAppear が表示されるたびに、これの代わりにピッカーが表示されるため、コードを間違った場所に配置したようです。次に、imagePickerDidCancel や imagePickerDidFinishPickingMedia などのピッカーのデリゲート メソッドを実装して、imagePickerDidCancel を実装するピッカーを閉じることができます。または、カスタムキャンセルメソッドが必要な場合は、コードがうまく見えます。

于 2011-07-22T12:08:36.113 に答える