2 yue1liang1chuan yue1liang1chuan 于 2013.07.04 15:04 提问

UIAlertView按钮到其他视图控制器

在应用中有一个uialertview,有两个按钮,第一个是取消按钮,另一个是OK按钮,在按下OK按钮时,应该跳到一个带有storyboard标志符的视图控制器RootView。应该怎么实现?

- (void)showAlarm:(NSString *)text {
        UIAlertView *alertView = [[UIAlertView alloc] initWithTitle:@"show alarm"
                                                            message:text delegate:self                                                  cancelButtonTitle:@"cancel"
                                                  otherButtonTitles:@"ok", nil];
        [alertView show];
    }
    - (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex{
        if (buttonIndex == 0){
             NSLog(@"cancel"); 
        }else if (buttonIndex == 1){
             NSLog(@"ok");
           UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"MainStoryboard_iPhone" bundle:[NSBundle mainBundle]];
           UINavigationController *navigationController = [storyboard instantiateViewControllerWithIdentifier:@"navigationController"];
            [navigationController presentViewController:[storyboard instantiateViewControllerWithIdentifier:@"RootView"] animated:YES completion:nil];
   }
    }

1个回答

zhanglei5415
zhanglei5415   Rxr 2013.07.04 16:53
已采纳

可尝试在当前控制器中,弹出identifier为navigationController的控制器,在navigationController控制器中再push到rootView.改成这样试试

 UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"MainStoryboard_iPhone" bundle:[NSBundle mainBundle]];
    UINavigationController *navigationController = [storyboard instantiateViewControllerWithIdentifier:@"navigationController"];
if (navigationController) {
   [self presentViewController:navigationController animated:YES completion:nil];
}

接着在identifier 为navigationcontroller的控制器的viewwillappear中push到rootview

-(void)viewWillAppear {
     RootViewController *rootController=[storyboard instantiateViewControllerWithIdentifier:@"RootView"];

     if (rootController) {
            [self.navigationController pushViewController:rootController animation:NO];
     }
}
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!