UIAlertview按钮动作改为另一个viewcontroller?

时间:2014-09-03 12:24:13

标签: ios objective-c uialertview

我刚刚进入Xcode编程,我需要代码,这样当我点击一个按钮时,它是一个确认,将我带入另一个ViewController。

我在页面上有一个X按钮,点击后我需要一个UIAlertview弹出说“取消'并且' next',当按下next时,我希望它更改为另一个ViewController。这些取消和下一个按钮需要并排。

1 个答案:

答案 0 :(得分:0)

首先要确保带按钮的视图是UIAlertView的委托。

@interface ViewController() <UIAlertViewDelegate>

然后,您需要在视图中的按钮中添加补足内部操作。按下按钮时,它会创建alertView并显示它。注意,它的代表是自己的。

- (IBAction)clickButton:(id)sender {
    UIAlertView *alert = [[UIAlertView alloc] initWithTitle: @"Test" message: @"Message" delegate: self cancelButtonTitle:@"Cancel" otherButtonTitles:@"Next", nil];
    [alert show];
}

最后,您创建委托功能。只要在alertView中单击按钮,就会触发此操作。 buttonIndex对应于单击的按钮,因此我们要在按下第一个按钮时显示视图(0对应取消,1对应下一个)。实际上,您可能想要呈现您定义的自定义视图控制器。

- (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex{
    if(buttonIndex == 1){
        UIViewController* newView = [[UIViewController alloc] init];
        [self presentViewController:newView animated:YES completion:nil];
    }
}