yue1liang1chuan
2013-07-04 07:04
采纳率: 69.8%
浏览 2.1k
已采纳

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条回答 默认 最新

  • ReyZhang 2013-07-04 08: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];
         }
    }
    
    点赞 打赏 评论

相关推荐 更多相似问题