0

UIImagePickerController について質問があります。UIImagePickerController をプレビューとして使用できますか? そのような場合、録音ボタンを非表示にする必要があります。それを行う方法はありますか? または UIImagePickerController 以外のプレビューを表示するその他の方法。

助けてくれてありがとう...

4

1 に答える 1

3

UIImagePickerController次を使用して、のコントロールを非表示にできます。

[myImagePickerController setShowsCameraControls:NO];

編集:このコードを確認してください。画像ピッカー内のすべてのコントロールが非表示になり、独自のカスタム コントロールを作成および追加できます。残念ながら、ピッカー内でコントロールを選択的に非表示にすることはできないため、これが代替手段です。

- (void)showCamera
{
    if ([UIImagePickerController isSourceTypeAvailable:UIImagePickerControllerSourceTypeCamera])
    {

        myImagePicker = [[UIImagePickerController alloc] init];

        [myImagePicker setSourceType:UIImagePickerControllerSourceTypeCamera];
        [myImagePicker setDelegate:self];
        [myImagePicker setShowsCameraControls:NO];
        UIView *overlayView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 320, 480)];
        UIButton *switchCameraButton = [UIButton buttonWithType:UIButtonTypeRoundedRect];
        [switchCameraButton setFrame:CGRectMake(10, 430, 72, 40)];
        [switchCameraButton addTarget:self action:@selector(changeCamera:) forControlEvents:UIControlEventTouchUpInside];
        [overlayView addSubview:switchCameraButton];
        [myImagePicker setCameraOverlayView:overlayView];
        [self presentViewController:myImagePicker animated:YES completion:nil];

    }
}
- (IBAction)changeCamera:(id)sender
{
    if (myImagePicker.cameraDevice == UIImagePickerControllerCameraDeviceFront) {
        [myImagePicker setCameraDevice:UIImagePickerControllerCameraDeviceRear];
    }else{
        [myImagePicker setCameraDevice:UIImagePickerControllerCameraDeviceFront];
    }
}
于 2012-09-07T07:26:33.340 に答える