0

アクションシートを使用して別のビューに移動する方法はありますか?

「実行」ボタンと「続行しますか?」というアクションシートがあります。その中で「はい」と「キャンセル」

はいを押したときに別のビューに移動できますか?

4

2 に答える 2

3

はい、可能です。これを行うには、viewControllerそれUIActionSheetを採用する必要がありますUIActionSheetDelegate。[はい]または[キャンセル]でアクションシートを閉じると、- actionSheet:didDismissWithButtonIndex:メソッドが呼び出され、そこから別のビューに移動するか、無視することができます。

参照: http ://developer.apple.com/library/ios/#documentation/uikit/reference/UIActionSheet_Class/Reference/Reference.html#//apple_ref/occ/cl/UIActionSheet

http://developer.apple.com/library/ios/#documentation/uikit/reference/UIModalViewDelegate_Protocol/UIActionSheetDelegate/UIActionSheetDelegate.html


編集:

@interface MyViewController : UIViewController <UIActionSheetDelegate>
-(IBAction)showActionSheet:(id)sender;
@end


@implementation MyViewController

-(IBAction)showActionSheet:(id)sender {
    UIActionSheet *actionSheet = [[UIActionSheet alloc] initWithTitle:@"Do you want to procced?"  delegate:self  cancelButtonTitle:@"Cancel"  destructiveButtonTitle:@"YES"  otherButtonTitles:nil];

    [actionSheet showInView:self.view];
}

-(void) actionSheet: (UIActionSheet *)actionSheet didDismissWithButtonIndex:(NSInteger)buttonIndex { 
    switch (buttonIndex) {
        case 0: { 
            // for illustration
            // let's assume (1) you have a navigation controller
            // (2) you are using storyboard
            // (3) in the storyboard, you have a viewController with identifier MyChildViewControllerIdentifier
            MyChildViewController *mcvc = [self.storyboard instantiateViewControllerWithIdentifier:@"MyChildViewControllerIdentifier"];
            [self.navigationController pushViewController:mcvc animated:YES];
            break;
        }
         default:
            break;
     }
 }

PS実行しませんでした。エラーが発生した場合は、修正するように通知してください。

于 2012-04-05T16:42:23.153 に答える
1

アクションシートを閉じてから[self presentmodalviewcontroller:myview animated:yes]

于 2012-04-05T16:41:05.663 に答える