zoukankan      html  css  js  c++  java
  • 自定义导航控制器返回按钮以及隐藏返回按钮的文字

    自定义导航控制器,重写下面的方法,创建一个返回箭头按钮

     1 - (void)pushViewController:(UIViewController *)viewController animated:(BOOL)animated
     2 
     3 {
     4 
     5     if (self.viewControllers.count > 0) {
     6 
     7         // 改变了返回按钮的图标
     8 
     9         viewController.navigationItem.leftBarButtonItem = [[UIBarButtonItem alloc]initWithImage:[UIImage imageNamed:@"pull_left_btn"] style:UIBarButtonItemStyleDone target:self action:@selector(back)];
    10 
    11     }
    12 
    13     [super pushViewController:viewController animated:YES];
    14 
    15 }

    // 返回

    1 - (void)back
    2 
    3 {
    4 
    5     [self popViewControllerAnimated:YES];
    6 
    7 }

    但是这样会导致弹出手势失效所以需要在- (void)viewDidLoad中添加以下代码

    - (void)viewDidLoad {
    
        [super viewDidLoad];
    
        // 清空弹出手势的代理,就可以恢复弹出手势
    
        self.interactivePopGestureRecognizer.delegate = nil;
    
    }

    隐藏返回按钮的文字和隐藏返回按钮(如果标题文字过长会导致下一个push的页面标题文字不居中)

        // 隐藏返回按钮的文字
        [[UIBarButtonItem appearance] setBackButtonTitlePositionAdjustment:UIOffsetMake(0, -60) forBarMetrics:UIBarMetricsDefault];
    
        // 隐藏返回按钮
        self.navigationItem.hidesBackButton = YES;
  • 相关阅读:
    hdu 1325 判断有向图是否为树
    poj 1182
    Ubuntu 系统 文件操作命令
    vim 快捷键大全
    Git 上传本地命令
    git错误:fatal: Not a git repository (or any of the parent directories): .git
    Git 如何回到过去,然后 再 回到将来
    Git 提供篇
    Linux 的cp命令
    Linux :: vi E212: Can't open file for writing
  • 原文地址:https://www.cnblogs.com/iamjjh/p/4629142.html
Copyright © 2011-2022 走看看