他的好处就是在程序执行viewDIdLoad之前可以把我们需要用的数据加载完成.这也是减轻控制器的负担之一的办法.但是我个人觉得好是每有数据的延迟加载的功能牛.延迟加载只在数据需要的时候才被加载到视图,而不是一下子全部加载.

------------------------------------------------------------------------------------------------------------------

在创建之前,来比较一个指定自定义VIEW和自定义视图控件的区别

相同之处:

在创建的时候,第三步是一样的

不同之处:

第一步是不同的:

自定义视图控件:

在使用该自定义视图控件前,就要形成一个功能相对稳定,布局完成的,可复用性强的view.

并且在该视图的.h文件中声明了该视图中所拥用到的所有的属性.

在.m文件中要实现要实现对该控件的初始化功能,并添加到视图中.

指定自定义的View:

等价与一个新开辟的控制器,可以很随意的去设置页面的内容.

第二步是不同的:

自定义视图控件:

在使用该视图控件的时候,先引入头文件类,然后拿出视图进行初始化控制,在赋值的时候,方可去除视图的属性来赋值操作. 而后在添加到当前视图中

指定自定义的View:

1:首先要是控制器中的.h文件中声明一个类型为uiview的属性

2:在调用的时候,要映入头文件.

要自定义指定view的时候就要在该控制器的.m文件中重写-(void)loadView的方法.并且在里面完成两步操作.

2.1:去除自定的view给当前属性的uiview

2.2:把当前属性的uiview给当前的self.view

----------------------------------------------------------------------------------------------------

创建步骤如下:

1:首先创建一个控制器继承自UIView

2:创建一个uiviewcontroller,在.h文件中引入我们创建的view,并且声明一个为uiview的属性,在.m文件中引入自定义的uiview,并且在.m中重写loadview方法.

3:在appdelgate.m设置启动文件.

实现方法如下

1:创建一个loginView继承自UIView,我们这里只在该文件的.m文件中实现把该窗口的背景搞成红色

- (id)initWithFrame:(CGRect)frame

{

self = [super initWithFrame:frame];

if (self) {

// Initialization code

self.backgroundColor = [UIColorredColor];

}

return self;

}

2:创建一个控制器MainViewController继承自UIViewController

在该控制器的.h文件中引入loginView类

声明属性@property(nonatomic,retain)UIView *Rview;

——————————————————————————————————————————————

在MainViewController.m文件中同样引入loginView类,并且在实现的时候要重写父类的loadView方法

-(void)loadView

{

/**

*  取出logview给self.Rview

*/

self.Rview = [[[loginView alloc] initWithFrame:[UIScreen mainScreen].bounds]autorelease];

/**

*  替换视图

*/

self.view = self.Rview;

}

3:在appdelegate.m中设置启动控制器

引入头文件   #import “loginView.h"

实现代码如下

MainViewController *mvc = [[MainViewController alloc] init];

self.window.rootViewController = mvc;

iOS中视图控制器指定自定义UIView相关推荐

  1. IOS 中视图控制器的生命周期

    1.init Allocating critical data structures required by your view controller 不要出现创建view的代码.良好的设计,在ini ...

  2. Cocoa编程中视图控制器与视图类详解

    iPhone编程规则是:一个窗口,多个视图.UIView是iPhone屏幕上很多控件的基础类.每个iPhone用户界面都是由显示在UIWindow(这其实也是个特殊的UIView)内的众多UIView ...

  3. 一劳永逸,iOS 网页视图控制器通用类封装

    原文链接:http://www.jianshu.com/p/553424763585 随着 H5 的发展,在 iOS 开发中,网页视图的使用率逐渐提升,为了增加代码封装度.减轻开发负担,因此通常会对网 ...

  4. iOS中UINavigationController控制器使用详解

    一.概述 UINavigationController用来管理视图控制器,在多视图控制器中常用.它以栈的形式管理视图控制器,管理视图控制器个数理论上不受限制(实际受内存限制),push和pop方法来弹 ...

  5. 在iOS中为ViewController构建自定义过渡

    总览 (Overview) Every new iOS comes with design changes. This time we saw the new View Presentation St ...

  6. iOS 中导航控制器全屏向右滑动返回上一界面

    在iOS中,导航控制器默认就自带了侧滑功能,当用户在界面的左边(左边边缘)滑动的时候,才会有侧滑功能.但是我们往往在开发的过程中需要在屏幕的任意位置滑动,都需要返回到上一个界面. 多说无意,直接看代码 ...

  7. iOS中单个控制器横屏切换的研究

    在项目中遇到了一个问题,app中有两个控制器要求可以切换横屏,研究了半天,终于找到了解决办法. 在AppDelegate中写 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 1 ...

  8. iOS中设置百度地图自定义标注图片,自定义泡泡

    #pragma mark - BMKMapViewDelegate // 根据anntation生成对应的View - (BMKAnnotationView *)mapView:(BMKMapView ...

  9. iOS中怎么存储照片到自定义相册 转载备份

    原文地址:https://www.cnblogs.com/muzichenyu/p/6006856.html 在市场上主流App中,大多数App都具有存储图片到自己App的相册中.苹果提供的方法只能存 ...

最新文章

  1. 如何及时获得AI顶尖科研团队的最新论文与进展?只需要一份AI内参!
  2. Java Threads 多线程10分钟参考手册
  3. ConcurrentHashMap 解读
  4. python语言用什么关键字来声明一个类_python使用什么关键字定义类
  5. [UVA315]Network(tarjan, 求割点)
  6. TensorFlow十三 LSTM练习
  7. c语言while跳不出来,这个while循环终止了却跳不出来为什么
  8. linux编译c 自动化,Linux江湖06:感悟GNU C以及将Vim打造成C/C++的半自动化IDE
  9. fzyzojP1635 -- 平均值
  10. php array_walk和array_map区别
  11. python中的字典操作_python中的字典以及相关操作
  12. WEB 服务器调试利器 -- Tamper Data
  13. RuntimeError: einsum(): operands do not broadcast with remapped shapes [original->remapped]
  14. unity导出fbx模型_三维制作内容,maya模型贴图文件导入untiy,烘焙灯光贴图
  15. Kubernetes的Limits和Requests
  16. 乐MAX2 乐视X820_官方线刷包_救砖包_解账户锁
  17. 河南这么大的省,也所谓的准一线,为什么IT行业就是发展不起来呢?
  18. 更改WLAN的IP地址
  19. SEEDLab ARP Cache Poisoning Attack Lab 实验报告
  20. 【Android】BLE:蓝牙低功耗基础

热门文章

  1. matlab离散系统仿真分析——电机
  2. linux的ftp命令大全文库,linux下ftp命令详解
  3. python中统计函数_python中count函数知识点浅析
  4. java计算机毕业设计国产精品动漫网站MyBatis+系统+LW文档+源码+调试部署
  5. phpbb风格模板_phpbb模板修改
  6. 会声会影安装闪退解决办法_会声会影使用中常见问题及解决办法(一)
  7. net-java-php-python-社区书店管理信息计算机毕业设计程序
  8. Java反射+自定义注解实现配置文件数组加载(实现@ConfigurationProperties(xxx))
  9. 2023年女性最佳职场大中华区榜单公布,33家公司入选 | 美通社头条
  10. 要闻君说:Synergy Research Group首发云基础设施数据,腾讯云v5一把;京东物流发力5G;厉害!阿里挖走贾扬清...