zoukankan      html  css  js  c++  java
  • iOS 修改backBarButtonItem 中的titile 字段

        需求如下:A 页面 push 到 B 页面。    B 页面中有个返回按钮 不显示A 中的title,而显示 "<返回" ,当然系统的样式还是默认的系统样式。(考虑都是navitation 导航下进行的)

    方案一) 

      我第一想到的思路是:

       在B页面中将backItem 隐藏,然后自定义一个按钮

      1.  [self.navigationItem setHidesBackButton:YES]      

      2.    UIBarButtonItem *backItem = [[UIBarButtonItem alloc] init];

            backItem.title = @"返回";

            self.navigationItem.backBarButtonItem = backItem;   

          [backItem addTarget:self .....]   ;//还要添加自定义事件    

      3.  self.navigationItem.leftBarButtonItem=backItem;

       这个方案好烦啊。。。。。因此让像我那么懒的一个人,肯定是无法容忍为了实现就那么个功能而去写那么多代码。 一直在想肯定有好的方案,而且是系统提供的。

    方案二) 

         A 中代码导航前修改title 如何,

         self.title=@"返回";

        [self.navigationController pushViewController:B animated:YES];

        不介意那么使用,在A页面导航回来时还要重新设置title,若导航页面多了,代码就乱了,缺少美感,但是个人觉得至少比起方案一那么多代码要好,简单的情况下可以使用。    但是有了方案三的终极方案,前面两个就纯属娱乐。  呵呵

    方案三)

         无意中发现自己最想要的一种方案。

          在A 代码中导航前写上

           UIBarButtonItem *backItem = [[UIBarButtonItem alloc] init];

            backItem.title = @"返回";

            self.navigationItem.backBarButtonItem = backItem;

            [self.navigationController pushViewController:B  animated:YES];

    这才是最完美的解决方案啊。  感谢CCTV,感谢MTV。  

    本人自己也一直意识到了self.navigationItem.backBarButtonItem这个按钮的存在,只是讲他使用在了B 页面上,所以一直功亏一篑

  • 相关阅读:
    bzoj1588
    bzoj1607
    bzoj2427
    Java-链表LinkedList源码原理分析,并且通过LinkedList构建队列
    Java --HashMap源码解析
    Java--volatile关键字的作用与用法
    Java--正则表达式-简单的在字符串中找数字
    Java--通过Spring AOP进行事务管理
    Java--String 和StringBuilder、StringBuffer 的区别?
    Java多线程--wait(),notify(),notifyAll()的用法
  • 原文地址:https://www.cnblogs.com/kingbo/p/4540685.html
Copyright © 2011-2022 走看看