从 UIAlertView 开始一个新的 ViewController
Starting a new ViewController from a UIAlertView
我想知道如何从 UIAlertView.To 我开始一个新的 ViewController 似乎你无法像使用按钮那样以图形方式连接 viewController .
我在第一个 viewController 中设置了 UIAlertView,如下所示:
UIAlertView *messageAlert = [[UIAlertView alloc]
initWithTitle:@"Start New View Controller?" delegate:self cancelButtonTitle:@"Cancel" otherButtonTitles:@"Yes",nil];
然后我像这样处理不同的按钮点击:
- (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex: (NSInteger)buttonIndex{
if (buttonIndex == 0){
NSLog(@"Cancel");
}
if (buttonIndex == 1){
NSLog(@"Yes");
}
}
我如何使用此警报框启动第二个 viewController(比如 viewContoller2)?
您可以以常规方式启动视图控制器,也可以使用 segue。对于 segue,你会做类似的事情:
if (buttonIndex == 1){
[self performSegueWithIdentifier:@"SEGUE_IDENTIFIER" sender:self];
}
稍后在代码中,您以这种方式设置控制器:
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
if ([segue.identifier isEqualToString:@"SEGUE_IDENTIFIER"]) {
MyViewController *viewContoller2 = (MyViewController *)segue.destinationViewController;
NSLog("viewContoller2 is ready for use");
}
}
或者没有 segues,做:
if (buttonIndex == 1){
MyViewController *viewContoller2 = [[MyViewController alloc] init];
[self presentViewController:viewContoller2 animated:YES completion:nil];
}
我想知道如何从 UIAlertView.To 我开始一个新的 ViewController 似乎你无法像使用按钮那样以图形方式连接 viewController .
我在第一个 viewController 中设置了 UIAlertView,如下所示:
UIAlertView *messageAlert = [[UIAlertView alloc]
initWithTitle:@"Start New View Controller?" delegate:self cancelButtonTitle:@"Cancel" otherButtonTitles:@"Yes",nil];
然后我像这样处理不同的按钮点击:
- (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex: (NSInteger)buttonIndex{
if (buttonIndex == 0){
NSLog(@"Cancel");
}
if (buttonIndex == 1){
NSLog(@"Yes");
}
}
我如何使用此警报框启动第二个 viewController(比如 viewContoller2)?
您可以以常规方式启动视图控制器,也可以使用 segue。对于 segue,你会做类似的事情:
if (buttonIndex == 1){
[self performSegueWithIdentifier:@"SEGUE_IDENTIFIER" sender:self];
}
稍后在代码中,您以这种方式设置控制器:
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
if ([segue.identifier isEqualToString:@"SEGUE_IDENTIFIER"]) {
MyViewController *viewContoller2 = (MyViewController *)segue.destinationViewController;
NSLog("viewContoller2 is ready for use");
}
}
或者没有 segues,做:
if (buttonIndex == 1){
MyViewController *viewContoller2 = [[MyViewController alloc] init];
[self presentViewController:viewContoller2 animated:YES completion:nil];
}