如何学习没有故事板的iOS编程?

如何学习没有故事板的iOS编程?,ios,cocoa-touch,Ios,Cocoa Touch,三个月前,我开始学习iOS开发,为我的一个班级建立一个最终项目。由于我使用的是故事板,所以推荐了一些助教来学习如何在没有故事板的情况下完全以编程方式编程iOS。我不断收到SIGBART错误,这迫使我删除有问题的按钮/字段,然后再次执行完全相同的操作,以便重新校准情节提要。我更愿意以编程的方式完成它,并且它第一次就可以工作 无论如何,我该如何学习如何以编程方式而不是使用XIB/NIB或故事板来完成所有事情?我遇到的每一个教程或书籍都使用这两种方法中的一种,因为它们看起来更直观,初学者更容易掌握 提

三个月前,我开始学习iOS开发,为我的一个班级建立一个最终项目。由于我使用的是故事板,所以推荐了一些助教来学习如何在没有故事板的情况下完全以编程方式编程iOS。我不断收到SIGBART错误,这迫使我删除有问题的按钮/字段,然后再次执行完全相同的操作,以便重新校准情节提要。我更愿意以编程的方式完成它,并且它第一次就可以工作

无论如何,我该如何学习如何以编程方式而不是使用XIB/NIB或故事板来完成所有事情?我遇到的每一个教程或书籍都使用这两种方法中的一种,因为它们看起来更直观,初学者更容易掌握

提前谢谢

  • 开始阅读Apple类对您将要使用的所有内容的引用。当您以编程方式进行操作时,了解要使用的属性和方法非常重要
  • 将“编程”添加到每个谷歌搜索中
  • 习惯于为几乎所有内容设置框架
  • 在我的理解中,故事板远不是初学者的素材。它需要非常深刻的洞察事情将如何发展以及什么是实际可能的(尽管xcode试图欺骗您)。你可能会改变某些东西的字体和颜色,并且认为它实际上会改变,傻瓜。 尤其是调试可能会很麻烦。我记得我的第一个故事板项目启动了3次,因为它是fubar(当时我只能调试)。 这些事情一开始可能会让人非常困惑

    根据我的经验,Nib/XIB工作起来更稳定,所以您可能想尝试一下,看一两个视图


    不过,以后你也不想错过故事板。只需几次鼠标点击,您就可以跳过数百行代码和可视化调试,这为您提供了更大的项目概览。

    我用XCode这种方式构建已有一段时间了,我在开发中不使用任何Xib文件

    入门非常简单,只需遵循以下步骤:

  • 创建新的单视图应用程序
  • 在导航器中,删除两个“.storyboard”文件
  • 在支持文件下的“.plist”文件中,删除与“主情节提要文件基本名称…”相关的两个字符串
  • 在“AppDelegate.m”中,在顶部包含自定义UIViewController,然后
  • 将“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];
        }
    

    网上有很多编码示例。干杯。

    不回答问题(而是鼓励使用故事板)的答案不合适。您需要将此问题缩小到特定的范围。它在目前的状态下太宽了。在代码中做任何事情都没有什么特别之处。想做就做在超过5年的iOS开发过程中,我从未使用过IB。@titaniumdecoy:这个问题本身并不能用stackoverflow规则来回答。