我最近开始从“ iOS编程大书呆子牧场指南第4版”中使用obj-c学习iOS。该版本于2014年发布,并使用Xcode 5编写。

我正在尝试制作一个带有两个按钮和两个标签的简单应用程序。标签连接到两个数组,当按下按钮时,相应数组中的对象将显示在相应的文本标签中(这是第1章中的Quiz应用程序)。

我在Xcode 6中将项目创建为“单视图”应用程序,并将所有对象放入视图控制器类中。我有两个标签,两个按钮,两个数组和一个整数,以跟踪必须从数组中显示的对象。

在书中说我应该在initWithNibName方法中初始化数组。我尝试过,但是由于某种原因它从未被调用过。因此,我将数组的初始化更改为init方法。它们初始化很好,但是当从另一个方法调用时,它们是nil。您知道为什么会这样吗?

我遇到的第二个问题是我无法在屏幕上获取情节提要的内容。它说我应该在ViewController内创建AppDelegate的实例,并使其成为根窗口控制器,但是我得到的只是一个白色窗口(如果不设置颜色,则为黑色)。

更新:我将数组的初始化从init方法更改为viewDidLoad方法,现在它们似乎运行良好。屏幕上什么也没有。

最佳答案

听起来您正在从应用程序委托和情节提要中初始化UIViewController。如果您在XCode(一个“单视图应用程序”)中创建一个新项目,则无需触摸应用程序委托即可在屏幕上显示内容。

我相信您的两个问题都与此有关,因为听起来好像您在屏幕上看到一个空的UIViewController(您在应用程序委托中创建的一个)

至于数组的初始化,viewDidLoad是执行此操作的常用位置。

关于ios - Xcode 6中的 Storyboard ,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/31944879/

10-10 21:11
查看更多