zoukankan      html  css  js  c++  java
  • UINavigationController

    利用UINavigationController,能够轻松地管理多个控制器。轻松完毕控制器之间的切换,典型样例就是系统自带的“设置”应用

    UINavigationController的使用步骤
    初始化UINavigationController
    设置UIWindow的rootViewController为UINavigationController
    依据详细情况,通过push方法加入相应个数的子控制器。



    UINavigationController以栈的形式保存子控制器
    @property(nonatomic,copy) NSArray *viewControllers;
    @property(nonatomic,readonly) NSArray *childViewControllers;


    使用push方法能将某个控制器压入栈
    - (void)pushViewController:(UIViewController *)viewController animated:(BOOL)animated;


    使用pop方法能够移除控制器
    将栈顶的控制器移除
    - (UIViewController *)popViewControllerAnimated:(BOOL)animated;
    回到指定的子控制器
    - (NSArray *)popToViewController:(UIViewController *)viewController animated:(BOOL)animated;
    回到根控制器(栈底控制器)
    - (NSArray *)popToRootViewControllerAnimated:(BOOL)animated;



    1.导航栏的View显示的内容是栈顶控制器的View.
    2.导航栏的内容由栈顶控制器的navigationItem属性决定.

    UINavigationItem有下面属性影响着导航栏的内容
    左上角的返回button
    @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;


    // 改动下一个界面返回button的文字
    self.navigationItem.backBarButtonItem = [[UIBarButtonItem alloc] initWithTitle:@"返回" style:UIBarButtonItemStyleDone target:nil action:nil];


  • 相关阅读:
    JS对文本框值的判断
    PostgreSQL导出表中数据
    postgreSQL中跨库查询在windows下的实现方法
    获取表中每个编号最新一条数据的集合
    开源跨平台声波传输库:Sonic
    Windows下配置cygwin和ndk编译环境
    char的定义在iOS和Android下是不同的
    stdout引发的curl 302跳转 crash
    WebBrowser内嵌页面的跨域调用问题
    【已解决】Ubuntu 12.04 LTS Source安装nodejs时出现"bash ./configure permission denied"
  • 原文地址:https://www.cnblogs.com/gavanwanggw/p/7350238.html
Copyright © 2011-2022 走看看