zoukankan      html  css  js  c++  java
  • 关于导航栏的六个小技巧

    UINavigationBarUINavigationItem是iOS开发中经常使用的控件。今天给大家介绍一下六个关于导航栏的小技巧。

    1.设置导航栏标题

    self.title = @"iOS开发:iOSDevTip";
    

    2.设置导航栏样式

    设置方法:

    [self.navigationController.navigationBar setBarStyle:UIBarStyleBlack];
    

    UIBarStyle的样式:

    typedef NS_ENUM(NSInteger, UIBarStyle) {
        UIBarStyleDefault          = 0,
        UIBarStyleBlack            = 1,
    
        UIBarStyleBlackOpaque      = 1, // Deprecated. Use UIBarStyleBlack
        UIBarStyleBlackTranslucent = 2, // Deprecated. Use UIBarStyleBlack and set the translucent property to YES
    };
    

    UIBarStyleDefault是默认样式,UIBarStyleBlack是黑色不透明。UIBarStyleBlackOpaqueUIBarStyleBlackTranslucent这两个已经废弃了。

    假设想设置导航栏透明,能够加上以下这句代码:

    self.navigationController.navigationBar.translucent = YES;
    

    3.改动返回buttontitle

    self.navigationItem.title = @"test";
    

    4.隐藏返回buttontitle

    比較笨的方法是:

    self.navigationItem.title = @"";
    

    还能够这样设置:

    [[UIBarButtonItem appearance] setBackButtonTitlePositionAdjustment:UIOffsetMake(0, -60) forBarMetrics:UIBarMetricsDefault];
    

    5.设置leftBarButtonItem

    self.navigationItem.leftBarButtonItem = [[UIBarButtonItem alloc] initWithTitle:@"back" style:UIBarButtonItemStylePlain target:self action:@selector(back:)];
    
    - (void)back:(id)sender
    {
        [self.navigationController popViewControllerAnimated:YES];
    }
    

    6.左滑返回手势失效了怎么办

    假设按上一步设置leftBarButtonItem之后。左滑返回手势就会失效。

    设置一下UIGestureRecognizerDelegate代理就可以:

    self.navigationController.interactivePopGestureRecognizer.delegate = self;
    

    以上是六个关于导航栏的小技巧。很多其它iOS开发相关的技术,请关注我的微信公众号iOS开发:iOSDevTip

  • 相关阅读:
    laravel md5+salt 密码
    sql语句 当前时间查找重复 时间戳转换
    Supesite 参数说明
    ajax
    PDO操作
    laravel paginate动态分页
    PHP iconv()函数转字符编码的问题(转)
    计算几何基础模板(2014.10.6一直沿用)
    hdu 4893
    2014 ACM/ICPC 鞍山赛区网络赛(清华命题)
  • 原文地址:https://www.cnblogs.com/lxjshuju/p/7121197.html
Copyright © 2011-2022 走看看