iphone - 从仅窗口模板创建应用程序时我缺少什么?

标签 iphone objective-c xcode ipad ios

我是 iOS 开发的新手,但很快就上手了。

我正在尝试找出如何从 xcode 中的仅限窗口模板创建通用应用程序。我我可以通过以下步骤将主视图添加到 main_window.xib:

  • 制作一个新的基于窗口的应用程序模板。
  • 转到文件 > 新文件 > uiviewcontroller 子类和 XIB 文件。
  • 打开 main_window.xib 并添加一个新的 View Controller ,将我的新 uiviewcontroller 子类作为检查器中选定的 NIB 名称。
  • 按住 Control 从窗口对象拖动到新的 View Controller ,并将其添加为 rootViewController。

我认为从这里我得到了与基于 View 的模板基本相同的东西,但是当我添加分段 View Controller 时,在代码中添加 IBOutlet/IBAction,然后连接导出和接收 Action 在 Interface Builder 中,应用程序在每次 启动时崩溃。

我确信我错过了连接此过程的重要步骤,如果有人可以提供解决方案以及设置此类事情时的一些一般性建议,我将不胜感激?

谢谢。

编辑:通过执行以下操作解决它:

  • 创建新的基于窗口的模板。
  • 创建 UIViewController 子类,任意命名。
  • 在 AppDelegate.h 中,在 @interface 之前添加 @class YourViewControllerName
  • 在 appDelegate 的 @interface 中,添加 YourViewControllerName *mainViewController;
  • 然后在 @interface 外添加 @property (nonatomic, retain) IBOutlet YourViewControllerName *mainViewController;
  • 在 AppDelegate.m 的顶部添加 #import YourViewControllerName.h
  • 添加 @synthesize YourViewControllerName
  • ApplicationDidFinishLaunching 中添加:[self.window addSubView:mainViewController.view]
  • 在界面生成器中打开 MainWindow.xib,从库中拖入一个新的 View Controller ,然后使用属性检查器将其类更改为 YourViewControllerName,然后选择从下拉菜单中选择相应的 NIB 文件。
  • 控制从应用委托(delegate)(IB 中的黄色框)拖动到您新创建的 View Controller ,并连接您创建的mainViewController socket 。

瞧! 完成。解决了我所有的问题。

非常感谢大家的帮助。

最佳答案

为您的自定义 View Controller 创建一个 IBOutlet,在您的应用程序委托(delegate)中将其称为 MyViewController 类型的 viewController(或您希望为您的类命名的任何名称),并使 MyViewController 成为 UIViewController 的子类。接下来,在 MainWindow.xib 文件中,从库中添加一个新的 View Controller ,确保将此 View Controller 的类设置为 MyViewController(或任何您的类名)。接下来,将 viewContoller socket 连接到 MainWindow.xib 文件中的 View Controller ,并在您的 applicationDidFinishLaunching 方法中添加:

[window addSubview:viewContoller.view];

应该可以了!

关于iphone - 从仅窗口模板创建应用程序时我缺少什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4514266/

相关文章:

iphone - 如何从PList中读取Bundle版本?

iphone - 如何从 iPhone 上的用户相册加载图像?

android - CCPointFromString 正在崩溃 :( in cocos2dx 2. 0.4

c++ - 如何在 C++11 中创建/传递完成处理程序回调作为函数参数?

python - xCode 上的 Python 代码辅助

ios - 新应用和应用更新必须使用公共(public) (GM) 版本构建

swift - 带有参数 gestureRecognizer 的选择器

android - 移动项目的 SLA(服务水平协议(protocol))

objective-c - 如何让 NSPopover 的分离窗口变成模态窗口

iphone - retain setter 是如何用@synthesize 实现的?