首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >获取UIViewController以推送到另一个控制器

获取UIViewController以推送到另一个控制器
EN

Stack Overflow用户
提问于 2014-10-12 16:23:01
回答 1查看 224关注 0票数 0

我有一个模式视图控制器,它是这样表示的:

代码语言:javascript
复制
[self presentViewController:photo animated:YES completion:nil];

因此,photo是一个模式视图控制器,但当它完成后,我想推送到一个导航视图控制器,如下所示:

代码语言:javascript
复制
[self dismissViewControllerAnimated:NO completion:^{

    // UINavigationController *nav = [[UINavigationController alloc] init];
    //nav.delegate = self;

    ProfilesViewController *profile = [[ProfilesViewController alloc] init];
    [_nav pushViewController:profile animated:YES];
}];

nav是照片的视图控制器中的一个属性,也有委派。仍然不能工作,那么我遗漏了什么?

EN

回答 1

Stack Overflow用户

发布于 2014-10-12 16:45:26

不要把事情复杂化,因为它可以很容易地完成,

在呈现照片模式视图控制器的视图控制器中,使用如下的通知来呈现它,

代码语言:javascript
复制
[self presentViewController:photo animated:YES completion:^{
    [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(pushToNextView:) name:@"someNotification" object:nil];
}];

并像这样调用该通知来关闭您的照片模式视图控制器,

代码语言:javascript
复制
[self dismissViewControllerAnimated:YES completion:^{
    [[NSNotificationCenter defaultCenter] postNotificationName:@"someNotification" object:nil];
}];

现在你可以像这样推送到另一个视图控制器,

代码语言:javascript
复制
- (void) pushToNextView:(NSNotification *)notification {
    //If you want some value from your notification
    //NSDictionary *someValue = notification.object;
    [self.navigationController pushViewController:ProfilesViewController animated:YES];
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26323230

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档