新手问题如下...默认Cocoa应用程序ViewController.m问题?
我正在学习基于Objective C的OS X Cocoa应用程序开发。我拥有的大多数书籍和视频都是针对iOS的,因此我将一些简单的iOS代码示例转换为OS X.
当我创建新的OS X“Cocoa Application”项目时,选中“use Storyboards”框,我新创建的项目中的默认ViewController.m没有@interface部分。这是预期的吗?
回复我最近的问题Cocoa ViewController.m vs. Cocoa Touch ViewController.m表示另一个用户的默认ViewController.m有一个@interface部分。
目前,我手动输入IBOutlets的@interface部分。 别人在做什么?或者我有一些配置问题?
我在优胜美地上使用Xcode 6.3.2。
这里是我的默认ViewController.m
//
// ViewController.m
// testME
//
// Created by ME on 6/19/15.
// Copyright (c) 2015 ME. All rights reserved.
//
#import "ViewController.h"
@implementation ViewController
- (void)viewDidLoad {
[super viewDidLoad];
// Do any additional setup after loading the view.
}
- (void)setRepresentedObject:(id)representedObject {
[super setRepresentedObject:representedObject];
// Update the view, if already loaded.
}
@end
感谢您的详细解释和两个链接,两者都非常有帮助我使用类扩展来创建一个IBOutlet实例变量private并且我创建了一个新的视图控制器,它确实有一个空的类扩展nsion @interface。那么为什么默认的ViewController没有?为什么这个“顶级”ViewController不应该有一个空的类扩展类别? – SDGary
用户*是否总是*在故事板之前创建自己的ViewControllers?或者,用户通常在创建自定义名称之后删除默认的ViewController? – SDGary
没有任何理由说明初始视图控制器没有类扩展名。 Xcode开发人员可能忘记将它放入生成的代码中以用于初始项目。是的,我可以说至少从个人经验,我总是删除或至少重命名默认ViewController更具描述性的名称。即使是故事板,随着项目变得更加复杂,您仍然会创建自己的自定义视图控制器子类。 –