Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/112.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 以编程方式或图形方式设计外观,哪一种更好?_Ios - Fatal编程技术网

Ios 以编程方式或图形方式设计外观,哪一种更好?

Ios 以编程方式或图形方式设计外观,哪一种更好?,ios,Ios,我正在学习ios编程的许多特性,但由于我是初学者,我不知道以编程方式还是以图形方式设计我的外观更好 例如,我应该在代码中创建一个视图,还是应该将其拖到情节提要中 我应该以编程方式还是以图形方式设置其大小和位置 项目中实际使用的是哪一个 特别考虑到Xcode6中新的自动布局和大小类功能,对于自动布局和布局约束,最好使用图形工具,因为它绝对是未来的证明。您可以用代码做同样的事情,但与图形方式相比,这需要花费大量的时间。在一天结束时,这一切都涉及到开发者的舒适区和应用程序的需求 关于通用应用程序的一个

我正在学习ios编程的许多特性,但由于我是初学者,我不知道以编程方式还是以图形方式设计我的外观更好

例如,我应该在代码中创建一个视图,还是应该将其拖到情节提要中

我应该以编程方式还是以图形方式设置其大小和位置

项目中实际使用的是哪一个


特别考虑到Xcode6中新的自动布局和大小类功能,对于自动布局和布局约束,最好使用图形工具,因为它绝对是未来的证明。您可以用代码做同样的事情,但与图形方式相比,这需要花费大量的时间。在一天结束时,这一切都涉及到开发者的舒适区和应用程序的需求

关于通用应用程序的一个小点:

当你选择图形故事板,并且iPhone和iPad有单独的东西(还有更大屏幕的iPhone和iPad)时,Universal app building非常舒适。如果你选择为一个通用应用程序编写所有的UI代码,那么你最终会编写很多If-else语句,如下所示

if ([[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPhone) {
    //Do iPhone stuff.
} else {
    //Do iPad stuff.
}
来自Interface Builder的自动布局帮助

添加、编辑或删除约束的最简单方法是使用 界面生成器中的可视化布局工具。创建约束的步骤如下所示 简单如在两个视图之间拖动控件,或添加多个视图 一次约束,您只需使用各种弹出窗口

引自-

你总是有工具来拯救你,即使你把约束弄得一团糟

一些真正的好东西


如果你把iOS开发作为一种爱好,那么我建议你坚持使用图形工具。如果您刚刚开始,这些工具学习起来更快,并且可以让您在更短的时间内构建应用程序

如果您希望在专业环境或大型团队中处理大型项目,那么通常需要100%的代码项目

如果你把AppStore上一些最大的应用程序与大公司分开,你会发现它们不使用interface builder(IB)文件。看看Facebook、Spotify、Dropbox等

一些原因包括(但不限于):

  • 易用性:interface builder中复杂的应用程序UI有时看起来像黑盒子,而代码通常更容易理解
  • 更简单的合并:如果有多个开发人员在同一个UI文件上工作,则合并可能是一场噩梦,与源文件相比更困难
  • 查找问题:如果纯代码项目中存在问题,那么问题就在代码中。在IB文件中查找问题可能很困难,这取决于它的埋藏程度。Xcode的“查找”工具也不会搜索IB文件
  • 代码运行速度更快:您可能不会注意到速度,但这是一个优势
有些人夸耀使用图形工具进行编码的速度,事实上,一开始它会比您还不熟悉的代码花费更长的时间。如果你坚持使用它,那么你将能够以同样快的速度编写应用程序