presentViewController 不存在
Posted
技术标签:
【中文标题】presentViewController 不存在【英文标题】:presentViewController doesn't present 【发布时间】:2013-10-11 12:21:08 【问题描述】:我用故事板制作了一个单视图项目,添加了几个视图控制器。 初始视图控制器有一个简单的按钮来显示另一个视图控制器
- (IBAction)doPhotoAlbumBtn:(id)sender
UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"Main.storyboard"
bundle:nil];
VCDecorations *ieVC =
[storyboard instantiateViewControllerWithIdentifier:@"VCDecorations"];
[self presentViewController:ieVC animated:NO completion:nil];
我导入了类,将 ib 中的 biecontroller 连接到正确的类,在 viewcontroller 上具有正确的标识符并选中“使用故事板 ID”复选框 我觉得我错过了一些非常基本的东西。 帮帮我,伙计们。 谢谢。
【问题讨论】:
尝试 [self storyboard] 而不是 UIStoryboard。 您是否将Storyboard ID
值设置为复选框上方的VCDecorations?
您可以在使用情节提要时使用 segue。在这种情况下,请执行 segue,然后给它一个标识符,然后您可以使用 prepareforSegue 方法从一个控制器到第二个控制器进行 segue。
不,我不能使用 segues,因为我使用照片选择模式,然后呈现 viewcontroler。我无法做到。
【参考方案1】:
如果您只想切换到与当前UIViewController
相同的故事板中的UIViewController
,您可以这样做:
UIViewController *vc = [self.storyboard instantiateViewControllerWithIdentifier:@"ID"];
[self presentViewController:vc animated:NO completion:nil];
编辑
要传递数据,您可以使用completion:block
中的块,为您要传递的对象添加一个属性。该块在动画完成后执行。
【讨论】:
谢谢,它成功了。但是..这似乎不是正确的方法,我试图向前传递数据,但我不能(尝试更改呈现的 vc 的标签文本) 我确实回答了你的问题并且成功了,请检查它是否正确。以上是关于presentViewController 不存在的主要内容,如果未能解决你的问题,请参考以下文章
PresentViewController:动画不显示在 iPad 上
self.presentingViewController presentViewController 不工作
导航控制器内的 UITableView 在关闭 presentViewController 后不滚动