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 页面上,所以一直功亏一篑

  • 相关阅读:
    java四种数组排序
    hadoop安装及配置
    Talend初试,实现定时同步
    JAVA语言概述和基本语法知识点
    Maven项目资源文件打包错误
    Ajax同步和异步
    Nginx + Tomcat 负载均衡
    PLSQL安装配置
    WebStorm 设置光标位置不随意停靠
    Hello Node.js
  • 原文地址:https://www.cnblogs.com/kingbo/p/4540685.html
Copyright © 2011-2022 走看看