UINavationController和懒加载 传值中的属性传值和代理传值

1.UINavigationContrller
  
  UINavigationControllers是导航控制器,主要作用就是控制视图的跳转,它有UINavigation Bar 、UINavigation Vi
  
  ew和UINavigation TooBar组成。
  
  创建一个Barbutton
  
  UIBarButtonItem *rightItem = [[UIBarButtonItem alloc] initWithTitle:@"Root" style:UIBarButtonItemS
  
  tyleBordered target:self action:@selector(popToRootVC)];

  childOne.navigationItem.rightBarButtonItem = rightItem;
  
2. UINacigationController的跳转方法

   [self.navigationController pushViewController:childOne animated:NO]//前往后
   
   [self.navigationController.navigationBar popNavigationItemAnimated:NO];//后往前

3. 懒加载

   在Web应用程序中,系统的瓶颈常在于系统的响应速度。如果系统响应速度过慢,用户就会出现埋怨情绪,系统的价值也因
   
   此会大打折扣。因此,提高系统响应速度,是非常重要的。
   
   Web应用程序做的最多就是和后台数据库交互,而查询数据库是种非常耗时的过程,当数据库里记录过多时,查询优化更显
   
   得尤为重要。为了解决这种问题,有人提出了缓存的概念。缓存就是将用户频繁使用的数据放在内存中以便快速访问。在
   
   用户执行一次查询操作后,查询的记录会放在缓存中。当用户再次查询时,系统会首先从缓存中读取,如果缓存中没有,
   
   再查询数据库。缓存技术在一定程度上提升了系统性能,但是当数据量过大时,缓存就不太合适了。因为内存容量有限,
   
   把过多的数据放在内存中,会影响电脑性能。而另一种技术,懒加载可以解决这种问题。
   
   懒加载(Load On Demand)是一种独特而又强大的数据获取方法,它能够在用户滚动页面的时候自动获取更多的数据,而新
   
   得到的数据不会影响原有数据的显示,同时最大程度上减少服务器端的资源耗用。
   
4. iOS中的懒加载

   懒加载——也称为延迟加载,即在需要的时候才加载(效率低,占用内存小)。所谓懒加载,写的是其get方法.

   注意:如果是懒加载的话则一定要注意先判断是否已经有了,如果没有那么再去进行实例化
   
5. 懒加载的好处

  (1)不必将创建对象的代码全部写在viewDidLoad方法中,代码的可读性更强

  (2)每个控件的getter方法中分别负责各自的实例化处理,代码彼此之间的独立性强,松耦合。
  
6. 传值

   iOS编程,视图与视图之间的传值总共有以下7种方法:1.属性2.方法3.协议4.单例5.消息中心6.block7.本地存储(NSU
   
   serDefault)

6.1 属性传值

   首先后面的界面定义了一个属性,用来保存前一个界面所传过来的值。
   
   在前一个界面对类进行初始化对象,然后将前一个界面的值传给后面这个类的属性
   
   在后一个界面需要显示的地方进行输出。
   
   属性传值一般就是前一个界面向后一个界面传值。
   
6.2 代理传值

   代理传值主要分成两部分,一部分委托,一部分实现。
   
   委托需要做的工作是:定义协议和方法  声明委托变量  设置代理  通过委托变量调用委托方法。
   
   实现需要做的工作:遵守协议  实现委托方法
   
   下面是两个页面实现传值额的步骤:
   
   首先在ViewController。h中声明一个协议
   
   @protocol PassTrendValue
   
   -(void)passTrendValues:(NSString *)values;//1.1定义协议与方法

   @end
   
   声明一个委托变量
   
   @property (retain,nonatomic) id <PassTrendValueDelegate> 
   
   在。m中实现定义的方法 并实现跳转
   
   在跳转到的页面添加这个协议
   
   实现这个方法




你可能感兴趣的:(UINavationController和懒加载 传值中的属性传值和代理传值)