三个月前我开始学习iOS开发,为我的一类建立一个最终项目。自从我使用故事板以来,一些TA建议学习如何在没有故事板的情况下编写iOS程序,完全以程序方式编写。我一直收到SIGBART错误,这迫使我删除有问题的按钮/字段,然后再次执行完全相同的操作以重新校准故事板。我宁愿以编程方式进行,也是第一次工作。
无论如何,我将如何学习如何以编程方式而不是XIB / NIB或故事板来学习?我似乎遇到的每个教程或书籍都使用这两种方法中的一种,因为它们看起来更容易让初学者接受。
提前致谢。
答案 0 :(得分:6)
我一直在以这种方式构建XCode一段时间,我在开发中不使用任何Xib文件。
只需按照以下步骤开始即可:
更新'didFinishLaunchingWithOptions'方法,如下所示:
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions{
self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
UIViewController *viewController = [[MyViewController alloc] init];
self.window.rootViewController = [[UINavigationController alloc] initWithRootViewController:viewController];
[self.window makeKeyAndVisible];
return YES;
}
运行应用程序应该会显示默认情况下具有黑色背景的新屏幕(MyViewController)。
在你的UIViewController中,你现在可以开始编写你需要的内容,说'viewDidLoad'方法。以下是一些例子:
- (void)viewDidLoad {
[super viewDidLoad];
self.view.backgroundColor = [UIColor whiteColor];
UIView *myView = [[UIView alloc] initWithFrame:CGRectMake(50, 50, 200, 200)];
myView.backgroundColor = [UIColor greenColor];
[self.view addSubview:myView];
UILabel *myLabel = [[UILabel alloc] initWithFrame:CGRectMake(10, 10, 180, 50)];
myLabel.font = [UIFont systemFontOfSize:20];
myLabel.text = @"Example";
myLabel.textColor = [UIColor darkGrayColor];
[myView addSubview:myLabel];
}
网上有很多编码示例。欢呼声。
答案 1 :(得分:0)
在我的理解中,故事板远不及初学者材料。它需要非常深入地了解事情将如何运作以及实际可能实现的目标(尽管xcode试图欺骗你)。你可以改变某些东西的字体和颜色,并认为它会真正改变,愚蠢的你。 特别是调试可能很麻烦。我记得从我的第一个故事板项目开始3次,因为它是fubar(据我当时可以调试)。 这些事情在开始时可能非常混乱。
根据我的经验,Nib / Xibs更稳定,所以你可能想尝试一两个观点。
稍后,您不想错过故事板。您可以通过几次鼠标点击跳过数百行代码和可视化调试,它可以为您提供更好的大型项目概览。