iOS加载程序视图的方式

The UIViewController class provides built-in support for loading a view controller’s views whenever they are needed. Specifically, views are automatically loaded when the view property is accessed. There are a few ways you can implement your app to load these views:

第一种使用故事板加载

  • You can specify the views for a view controller using a Storyboard created in Interface Builder. A storyboard contains preconfigured view controllers and their associated views and is the preferred way to develop your app'ss user interface. A key advantage of storyboards is that they can express relationships between different view controllers in your app. For example, you can state that one view controller's contents are contained inside another view controller or that a view controller is displayed as a transition (known as a segue) from another view controller . By allowing you to see the relationships between view controllers, storyboards make it easier to understand your app's behavior at a glance.

At runtime, the view controller uses the storyboard to automatically instantiate and configure its views. Often, the view controller itself is automatically created by segues defined in the storyboard. When you define a view controller's contents using a storyboard, you never directly allocate and initialize the view controller object. Instead, when you need to programmatically instantiate the view controller, you do so by calling the instantiateViewControllerWithIdentifier: method on a UIStoryboard object.

第二种使用nib文件加载

  • You can specify the views for a view controller using a nib file, also created in Interface Builder. Like a storyboard, a nib file allows you to create and configure a set of views. However, you cannot easily create or see the relationships between view controllers using nib files as you can when using storyboards.

To initialize your view controller object using a nib, you use the initWithNibName:bundle: method to specify the nib file used by the view controller. Then, when the view controller needs to load its views, it automatically creates and configures the views using the information stored in the nib file.

第三种手动实现

  • If you cannot define your views in a storyboard or a nib file, override the loadView method to manually instantiate a view hierarchy and assign it to the view property.

总结

All of these techniques have the same end result, which is to create the appropriate set of views and expose them through the view property.

时间: 2024-10-29 18:59:44

iOS加载程序视图的方式的相关文章

引导加载程序之争: LILO 和 GRUB

在不考虑他们的工作或专业情况下,所有 Linux 用户都会使用的是哪个工具?引导加载程序.通过本文了解引导加载程序的工作原理,认识两个流行的引导加载程序 LILO(LInux LOader)和 GNU GRUB(GRand Unified Boot loader), 并研究两者各自的优点和缺点. 什么是引导加载程序? 最简单地讲,引导加载程序(boot loader) 会引导操作系统.当机器引导它的操作系统时,BIOS 会读取引导介质上最前面的 512 字节(即人们所知的 主引导记录(maste

大数据与机器学习:实践方法与行业案例.3.3 自动加载程序的数据库设计

3.3 自动加载程序的数据库设计 根据之前的设计,自动加载程序需要从数据库配置表中获取配置信息,并不断更新相关的状态,表3-2列出了自动加载程序需要的所有配置表. 表3-2 自动加载程序的配置表 表 名 中文名称 用 途 file_settings 数据文件信息表 存储数据文件名称.日期等配置信息 file_status 数据文件状态表 存储数据文件的状态 load_config 加载配置信息表 存储数据库中表的相关信息 ftp_server 数据缓冲区信息表 存储数据缓冲区文件服务器的相关信息

MVC Ajax Helper或Jquery异步加载部分视图_jquery

废话不多说了,直接给大家贴代码了. Model: namespace MvcApplication1.Models { public class Team { public string Preletter { get; set; } public string Name { get; set; } } } 通过jQuery异步加载部分视图 Home/Index.cshtml视图中: @{ ViewBag.Title = "Index"; Layout = "~/Views/

转圈圈定制加载中视图

// // HYCircleLoadingView.h // HYCircleLoadingViewExample // // Created by Shadow on 14-3-7. // Copyright (c) 2014年 Shadow. All rights reserved. // #import <UIKit/UIKit.h> /*! * @brief 圆形转圈圈加载等待视图 * @author huangyibiao */ @interface HYBCircleLoading

使用Donetbar控件,出现“设计器加载程序未提供根组件 但没有指出原因”错误如何解决

问题描述 使用Donetbar控件,出现"设计器加载程序未提供根组件 但没有指出原因"错误如何解决 使用donetbar控件搭建winform窗体应用程序,在用到SuperTabControl的SelectedTabChanged方法时,只要后台代码有改动,设计界面就会变成空白,去掉这个方法就正常,请问这是什么问题,如何解决? 解决方案 应该是你的dotnetbar是破解的或者版本和你用的.net框架不匹配造成的.

如何配置并排除GNU引导加载程序(GRUB)故障

由于 LFCS 考试需求的变动已于 2016 年 2 月 2 日生效,因此我们向 LFCS 系列 添加了一些必要的话题.为了准备认证考试,我们也强烈推荐你去看看 LFCE 系列. 本文将会向你介绍 GRUB 的知识,并会说明你为什么需要一个引导加载程序,以及它是如何给系统增加功能的. Linux 引导过程 是从你按下你的电脑电源键开始,直到你拥有一个全功能的系统为止,整个过程遵循着这样的主要步骤: 一个叫做 POST(上电自检)的过程会对你的电脑硬件组件做全面的检查. 当 POST 完成后,它会

LFCS 系列第十三讲:如何配置并排除 GNU 引导加载程序(GRUB)故障

由于 LFCS 考试需求的变动已于 2016 年 2 月 2 日生效,因此我们向 LFCS 系列 添加了一些必要的话题.为了准备认证考试,我们也强烈推荐你去看看 LFCE 系列. LFCS 系列第十三讲:配置并排除 Grub 引导加载程序故障. 本文将会向你介绍 GRUB 的知识,并会说明你为什么需要一个引导加载程序,以及它是如何给系统增加功能的. Linux 引导过程 是从你按下你的电脑电源键开始,直到你拥有一个全功能的系统为止,整个过程遵循着这样的主要步骤: 1. 一个叫做 POST(上电自

VS加载设计视图失败

问题描述 加载用户控件或者设计视图有时候会报错,错误源于在构造函数中调用一些dll(由c++写的一些获取数据的方法,但是未登录前都会导致内存溢出),有没有办法标记.cs中的一段语句,使得vs在设计模式下不调用这段语句,这样设计视图就不会加载失败了,有人知道怎么用么? 解决方案 解决方案二:你确定是写在了构造函数中,而不是写到设计器的代码里去了?解决方案三:使得vs在设计模式下不调用这段语句,这样设计视图就不会加载失败了,----------如果你用户控件的DLL需要登录才能使用,你即使想出办法跳

为什么xcode7的模拟器,加载网页视图后什么也不显示

问题描述 为什么xcode7的模拟器,加载网页视图后什么也不显示 如题,在xcode6上运行正常的demo,到xcode7里,运行模拟器就是白屏. 而且模拟器本身网络没问题,可是登录safari 解决方案 xcode7刚出还是有很多bug建议使用回之前的稳定的版本