首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MainWindow.xib和ViewController.xib

MainWindow.xib和ViewController.xib
EN

Stack Overflow用户
提问于 2012-08-14 08:28:28
回答 1查看 1.9K关注 0票数 0

我不明白有什么不同,随着新的Xcode4(我有最新的4.4.1)的发布,我无法理解我买的一些书,我迷路了。

书中说我需要单击myprogramViewController.xib,但是在没有出现的新xcode中,我需要创建它吗?

书中还说打开myapplicationViewController.m和myapplicationViewController.h来做一些修改(我猜这是相同的MainWindow.xib和myapplicationViewController.m,和.h的是一样的)。

那么我该把按钮和标签之类的东西拖到哪里呢?在MainWindow中还是在ViewController中?(但是我需要创建ViewController吗?)我指的是.xib one,因为我只有ViewController.m和ViewController.h,所以缺少.xib one。

我需要帮助,谢谢大家!

附言:我正在使用单视图应用程序。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-08-14 08:40:42

从Xcode 4.3+创建新的单视图iOS应用程序时,没有任何默认的ViewController.xib。相反,您可以使用MainStoryboard_*.storyboard,它包含一个根视图控制器,您可以在其中添加标签、按钮或任何其他UI元素。

这个根视图控制器的标识是ViewController,它引用ViewController.h/m中定义的UIViewController子类。当您在情节提要的根视图控制器中添加一个按钮时,您可以将其CTRL+drag到ViewController.h以创建一个出口( UI元素和实例属性之间的连接),然后用ViewController.m编写一些代码。

让我们看一下下面的截图:

我添加了一个圆形矩形按钮到根视图控制器,点击“助理编辑器”,并将其CTRL+dragged到ViewController.h,并将出口命名为“按钮”。然后,在-viewDidLoad方法中,您可以执行以下操作:

代码语言:javascript
复制
[_button setTitle: @"myTitle" forState: UIControlStateNormal];

编辑

据我所知,故事板没有文件所有者。每个视图控制器都是用它们自己的UIViewController子类实例单独实例化的,您可以使用self.window.rootViewController及其子视图从AppDelegate.m访问每个视图控制器。所以“隐式文件所有者”是AppDelegate。

您可以遵循基于故事板的教程,如this one。我个人不喜欢使用故事板,因为有太多东西是隐含的。我每页有一个xib (视图控制器),并从appDelegate中实例化的主根视图控制器中单独加载它们。

要了解在没有故事板的情况下它是如何工作的,Xcode允许您在创建项目时不使用它们。您将获得一个从AppDelegate实例化的简单ViewController.xib/h/m

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11944149

复制
相关文章

相似问题

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