ios - 调用 present Modal ViewController 后,看不到我在 Storyboard上拖动的呈现 View 的控件

标签 ios

我是 iOS 开发的新手。我正在尝试从一本书中完成一个示例,但我使用 Storyboard而不是 xib。我向其中一个 View 添加了一些按钮,并为其分配了一个 View Controller 。我试图调用 presentModalViewController 以在操作中显示 View ,但在呈现的 View 上似乎什么也没有。我在 viewdidload 中添加了一些代码,它起作用了。但是为什么我可以看到 Storyboard上的按钮?

最佳答案

您应该使用 performSegueWithIdentifier:sender:,而不是自己实例化和呈现 View Controller 。只有这样它才会从 Storyboard 中反序列化。

如果您真的只想将 Storyboard用作过渡的保留区域,请使用 [self.storyboard instantiateViewControllerWithIdentifier:@"whatever"] 反序列化它并显示结果。但这不是 Storyboard的工作方式。目的是在您的 segue 中指定目标和转换。它作为模式呈现只是您定义的 segue 的一部分。

这样想: Storyboard不能直接替代 XIB。 XIB 定义了单个 View Controller 的内容。 Storyboard不仅定义了许多 View Controller 及其内容,还定义了 View Controller 如何相互交互。

关于ios - 调用 present Modal ViewController 后,看不到我在 Storyboard上拖动的呈现 View 的控件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19648792/

相关文章:

ios - 为什么我的 UILabel 没有在 queryPedometerDataFromDate 内更改?

ios - 在自定义 segue 过渡期间, View 的导航栏项目放错了位置

android - 图像资源从 native 应用程序中消失

ios - iOS-使用.stringsdict的Hanling复数名词本地化-不起作用

ios - 核心数据 : Insert and delete with To many relationship

ios - 根据 UIPicker 的选择更新 UICollectionView

iphone - iPhone可以串流MMS,RTSP(RTP,SDP),HTTP渐进式串流,HTTP即时串流(M3U8)文件

ios - 为不同的 UITableViewCell 类创建单个 .xib

iphone - 仅使用 iPhone 顶部的麦克风

ios - 如何在 iOS 上使用 ffmpeg?