zoukankan      html  css  js  c++  java
  • UINavigationBar 总结

    一、某个 ViewController 出现隐藏 NavigationBar

    - (void)viewWillAppear:(BOOL)animated {
        [super viewWillAppear:animated];
        [self.navigationController setNavigationBarHidden:YES animated:NO];
    }
    
    - (void)viewDidDisappear:(BOOL)animated {
        [super viewDidDisappear:animated];
        [self.navigationController setNavigationBarHidden:NO animated:NO];
    }

    二、调整 NavigationBar 高度

    原文

      1、介绍

        1) 默认是 44 个像素点。

      2、使用

    - (void)viewDidLoad
    {
        [super viewDidLoad];
        // Do any additional setup after loading the view.
        
        self.title = @"AAAAA";
        
        UIBarButtonItem* leftBarButton = [[UIBarButtonItem alloc] initWithImage:[UIImage imageNamed:@"Action_Moments.png"]
                                                                          style:UIBarButtonItemStyleBordered target:self
                                                                         action:@selector(onclickBackBarButton)];
        self.navigationItem.leftBarButtonItem = leftBarButton;
    }
    
    - (void)viewWillAppear:(BOOL)animated {
        [super viewWillAppear:animated];
        
        CGRect rect = self.navigationController.navigationBar.frame;
        rect.size.height = 100.0f;
        self.navigationController.navigationBar.frame = rect;
        
        [self.navigationController.navigationBar setTitleVerticalPositionAdjustment:-40.0f forBarMetrics:UIBarMetricsDefault];
        
    //    [self.navigationItem.backBarButtonItem setBackgroundVerticalPositionAdjustment:-40.0f forBarMetrics:UIBarMetricsDefault];  // 对系统自带的 backBarButton 不起作用
        
        [self.navigationItem.leftBarButtonItem setBackgroundVerticalPositionAdjustment:-40.0f forBarMetrics:UIBarMetricsDefault];
    }
    
    - (void)viewWillDisappear:(BOOL)animated {
        [super viewWillDisappear:animated];
        
        CGRect rect = self.navigationController.navigationBar.frame;
        rect.size.height = 44.0f;
        self.navigationController.navigationBar.frame = rect;
    }
    

      

        注意:

          1) 如果使用系统默认的 backBarButton 是不能调整高度的。

          2) 只有自定的 barButtonItem,而且使用以下初始化,才可以调整其高度。

            

    - (id)initWithImage:(UIImage *)image style:(UIBarButtonItemStyle)style target:(id)target action:(SEL)action
    

      

            

  • 相关阅读:
    Redis源码解析:28集群(四)手动故障转移、从节点迁移
    Redis源码解析:27集群(三)主从复制、故障转移
    Redis源码解析:26集群(二)键的分配与迁移
    centos 6.5 安装composer
    Centos安装php高版本
    CentOS快速搭建LAMP环境
    封装类似thinkphp连贯操作数据库的Db类(简单版)。
    php封装pdo操作数据的工具类
    php中使用mysqli和pdo扩展,测试mysql数据库的执行效率。
    php中使用mysqli和pdo扩展,测试连接mysql数据库的效率。
  • 原文地址:https://www.cnblogs.com/eileenleung/p/3634648.html
Copyright © 2011-2022 走看看