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;
  • 相关阅读:
    设置cookie,读取cookie案例
    npm常用命令及版本号浅析
    nrm安装与使用
    ES6解构赋值
    nodemon 基本配置与使用
    nodejs开发辅助工具nodemon
    Node自动重启工具 nodemon
    深入浅出Object.defineProperty()
    js原生缓慢返回顶部函数封装
    The linux command 之权限
  • 原文地址:https://www.cnblogs.com/iamjjh/p/4629142.html
Copyright © 2011-2022 走看看