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;
  • 相关阅读:
    定时器
    WPF拖动总结
    将两个不同进程的窗口设置为父子关系
    Docker私有仓库管理
    Dockerfile创建zabbix监控体系
    Dockfile自动创建discuz论坛和可道云
    Docker的自动构建镜像
    Docker简介
    Mapreduce
    分布式文件系统与HDFS
  • 原文地址:https://www.cnblogs.com/iamjjh/p/4629142.html
Copyright © 2011-2022 走看看