0

私はこのアプリを構築しており、かなり成功しています。ただし、最近、ユーザーが画像をアップロードする方法を変更したいと考えていました。アクションシート付きになりました。問題は、ボタンがクリックされたときに、アクションシートを閉じてから画像ギャラリーを起動しようとしたが、うまくいかないことです。ご協力いただきありがとうございます!

-(void)actionSheet:(UIActionSheet *)actionSheet clickedButtonAtIndex:(NSInteger)buttonIndex {

    if (buttonIndex == 0) {

        [actionSheet dismissWithClickedButtonIndex:0 animated:NO];

        UIImagePickerController *picker = [[UIImagePickerController alloc] init];
        picker.sourceType = UIImagePickerControllerSourceTypeCamera;
        picker.delegate = self;

        [self presentViewController:picker animated:YES completion:NULL];
}


///////////

  UIActionSheet *actionsheet = [[UIActionSheet alloc]

                                  initWithTitle:@"Submit Photo"

                                  delegate:self

                                  cancelButtonTitle:@"Cancel"

                                  destructiveButtonTitle:nil

                                  otherButtonTitles:@"Take Photo",@"Select Photo from Gallery", nil];

    [actionsheet showInView:self.view];    
4

1 に答える 1

1

actionSheet:clickedButtonAtIndex:デリゲート メソッドを実装する代わりに、メソッドを実装しactionSheet:didDismissWithButtonIndex:ます。その後、アクション シートを自分で閉じる必要はありません。

selfまた、アクション シートを作成するときに、デリゲートとしてアクション シートに渡すようにしてください。

于 2012-11-16T00:10:53.617 に答える