zoukankan      html  css  js  c++  java
  • iOS:iOS中的多控制器管理

    iOS中的控制器有三种创建方式:

    1.通过storyboard创建
    UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"Apply" bundle:nil];
    SchemeViewController *schemeVC = [storyboard instantiateViewControllerWithIdentifier:@"SchemeViewController"];
    2.指定xib文件来创建
    YFViewController *mj = [[YFViewController alloc] initWithNibName:@"YFViewController" bundle:nil];
    3.直接创建
    YFViewController *mj = [[YFViewController alloc] init];
    一个iOS的app很少只由一个控制器组成,除非这个app极其简单,当app中有多个控制器的时候,我们就需要对这些控制器进行管理,有多个view时,可以用一个大的view去管理1个或者多个小view,控制器也是如此,用1个控制器去管理其他多个控制器,比如,用一个控制器A去管理3个控制器B、C、D,控制器A被称为控制器B、C、D的“父控制器”,控制器B、C、D的被称为控制器A的“子控制器”,为了便于管理控制器,iOS提供了2个比较特殊的控制器,UINavigationController和UITabBarController。
    •UINavigationController以栈的形式保存子控制器
    •使用push方法能将某个控制器压入栈
    - (void)pushViewController:(UIViewController *)viewController animated:(BOOL)animated;
    •使用pop方法可以移除控制器
    //将栈顶的控制器移除
    - (UIViewController *)popViewControllerAnimated:(BOOL)animated;
    //回到指定的子控制器
    - (NSArray *)popToViewController:(UIViewController *)viewController animated:(BOOL)animated;
    //回到根控制器(栈底控制器)
    - (NSArray *)popToRootViewControllerAnimated:(BOOL)animated;
    •导航栏的内容由栈顶控制器的navigationItem属性决定,UINavigationItem有以下属性影响着导航栏的内容
    //左上角的返回按钮
    @property(nonatomic,retain) UIBarButtonItem *backBarButtonItem;
    //中间的标题视图
    @property(nonatomic,retain) UIView          *titleView;
    //中间的标题文字
    @property(nonatomic,copy)   NSString        *title;
    //左上角的视图
    @property(nonatomic,retain) UIBarButtonItem *leftBarButtonItem;
    UIBarButtonItem *rightBarButtonItem  
    //右上角的视图
    @property(nonatomic,retain) UIBarButtonItem *rightBarButtonItem;
    控制器里的view加载过程:
    控制器的view加载整个生命周期中各个时期调用的方法:
    内存警告处理:
  • 相关阅读:
    基于Form表单和AJAX的登录示例
    HTML表格与表单
    HTML基础
    如何在AWS中部署Java Web应用程序?
    AWS前沿云计算课程——快速学会云上部署及Web应用程序管理
    如何在AWS云上部署应用
    Java知识系统回顾整理01基础02面向对象02属性
    Java知识系统回顾整理01基础02面向对象01类和对象
    Java知识系统回顾整理01基础01第一个程序07Eclipse使用----找不到类如何解决?
    Java知识系统回顾整理01基础01第一个程序06Eclipse使用技巧
  • 原文地址:https://www.cnblogs.com/yif1991/p/5143094.html
Copyright © 2011-2022 走看看