ios - UIView - 类似于 ViewDidLoad 的方法?

标签 ios iphone objective-c xcode storyboard

我正在创建一个仅使用 Storyboard(没有单独的 xib-s)的应用程序。 这是我的 Storyboard的截图:

enter image description here

三个 View Controller 中的每一个(一个带有“无限”和“级别”标签,一个带有两个开关,一个带有一些标签)都正确分配给了 .h 和 .m 文件。

这是我的问题 - 如何调用类似 ViewDidLoadViewWillAppearViewDidAppear 的东西? 我试着打电话 -(void)willMoveToSuperview:(UIView *)newSuperview,但它不能像 viewDidLoad 那样工作。

如何解决?


而且,在 OptionsController.m 中,我无法调用任何 viewDid... 或 viewWill... 函数


在界面中,我继承了 UIView。我将其更改为 UIViewController,现在我拥有所有这些方法,但现在当我单击应显示“OptionsController”的按钮时,出现错误:[OptionsController _setViewDelegate:]:无法识别的选择器已发送到实例 0x8ab94e0'” – Artur Bartczak 1小时前删除

最佳答案

对于 Storyboard中的每个 View Controller ,您必须将 .h 和 .m 文件添加到项目中。该文件的名称是您在 Storyboard的检查器中为 View Controller 输入的类名。因此,如果您有一个 UITableViewController 类型的 MainViewController,则必须通过“新文件”将文件添加到您的项目中。然后在这个文件中调用 viewDidLoad 和另一个。

对于您的 Storyboard:选择第一个条目“ViewController”。在检查器(右面板)中,在自定义类下输入一个唯一的类名,例如 OptionsViewController。然后选择项目面板(左侧面板),选择左侧图标进行文件浏览。右键单击并选择“新文件”。在对话框中选择 ios->cocoa touch->objective c class 然后下一步。现在在自定义类下输入与 Storyboard 中完全相同的名称。对于子类选择父类,如果你在你的 Storyboard中拖动一个 UIViewController ,你必须在这里输入相同的内容。 接下来选择要保存的目录,然后单击创建。

现在,如果您单击新创建的 .m 文件,您会看到您现在可以修改的方法 viewDidLoad。

关于ios - UIView - 类似于 ViewDidLoad 的方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20573233/

相关文章:

iPhone:NSComparisonResult 和 NSDiacriticInsensitiveSearch 问题斯堪的纳维亚字母表

iphone - 有没有一种方法可以为 UITableViewCell 设置动画,以便该行短暂闪烁到选定状态,然后在选择时返回白色?

javascript - 在 Objective C 中执行 js

objective-c - 在钥匙串(keychain)/用户默认值中保存原子属性有什么好处吗?

ios - swift 改变颜色的属性观察器

ios - UINavigationBar 背景——如何覆盖所有尺寸、分辨率和设备?

iPhone,重现放大镜效果

objective-c - iOS:替换数组数组中的对象

ios - 为 iPhone 和 iPad 制作一个 .IPA

objective-c - 即使从主线程调用更新,UI 也不更新