navigationBar导航条和navigationItem设置:基本搞定导航条上的文字和按钮以及各种跳转

翻译 2016年04月09日 15:17:32

(1)navigationBar导航条可以看做是self.navigationController导航控制器的一个属性,可以直接用点来表示self.navigationController.navigationBar,当然navigationBar自己还有很多属性,比如样式barStyle、背景backgroundColor、frame属性(可以获取宽高这些信息),还可以用setBackgroundImage方法设置背景图片,当然图片多了可以使用clipsToBounds剪裁。

(2)但,navigationBar是否隐藏和显示这个需要它爸也就是self.navigationController来控制,有直接.navigationBarHidden设置为YES/NO,也可以用方法setNavigationBarHidden,都能实现效果。

(3)另一个重要的知识是对navigationItem的设置,这个属性和navigationController是平级的,所以直接可以用self.navigationItem使用。当然可用的有设置导航条标题的方法setTitle,当然你也可以直接把文字换成一个视图,即所谓的标题视图放在导航条的中间,用得方法是setTitleView,很多游戏的导航条中间貌似是一个图片,可以用这个。

(4)最重要的可能是给navigationItem设置左右两边的按钮,一般默认的在左边有“返回”,在右边的有“摄像头”(如微信朋友圈)。步骤就是创建一个UIBarButtonItem对象,然后直接把这个对象赋值给self.navigationItem.leftBarButtonItem或者右边的。当然也可以一次创建很多个UIBarButtonItem组成一个数组,然后把这个数组赋值给self.navigationItem.leftBarButtonItems,注意后面这个和前面这个相比,多了一个“s”,有很多个。也要注意一下有多个按钮时的排列顺序。

(5)我们创建的这些导航条按钮有很多种形式,有的是由文字的,有的时图片,有的时系统自带的如摄像头或者Reply这些icon,有的完全是自己定义的视图。我们当然也可以利用自己创建的导航条按钮来覆盖原来导航控制器产生的默认的按钮,如“

import “SecondViewController.h”

@interface SecondViewController ()

@end

@implementation SecondViewController

  • (void)viewDidLoad {
    UILabel *label1=[[UILabel alloc]init];
    label1.frame=CGRectMake(38, 80, 300, 30);
    label1.backgroundColor=[UIColor whiteColor];
    label1.text=@”This is secondviewcontroller”;
    [self.view addSubview:label1];

    UIButton *btn2=[UIButton buttonWithType:UIButtonTypeRoundedRect];
    btn2.frame=CGRectMake(38, 120, 300, 30);
    [btn2 setTitle:@”backTo” forState:UIControlStateNormal];
    btn2.backgroundColor=[UIColor orangeColor];
    [self.view addSubview:btn2];
    [btn2 addTarget:self action:@selector(backTo) forControlEvents:UIControlEventTouchUpInside];

    //设置导航标题,这个时候的返回按钮的title就是上一级的navigationItem的title文字
    [self.navigationItem setTitle:@”子页”];

    //我们也可以在子页中自定义一个返回按钮覆盖原先的”

相关文章推荐

如何去除tabBar的上横线和navigationBar的下横线

如何去除tabBar的上横线和navigationBar的下横线

【iOS开发-22】navigationBar导航条和navigationItem设置:基本搞定导航条上的文字和按钮以及各种跳转

navigationBar导航条可以看做是self.navigationController导航控制器的一个属性,可以直接用点来表示self.navigationController.navigati...

iOS开发navigationBar导航条和navigationItem设置:基本搞定导航条上的文字和按钮以及各种跳转

转载自:http://blog.csdn.net/weisubao/article/details/39646739 (1)navigationBar导航条可以看做是self.navigat...

【导航条滚动透明】一个分类搞定

下面这个界面有没有觉得很眼熟。打开你手里的App仔细观察,你会发现很多都有实现这个功能。比如美团外卖的首页模块,新浪微博的个人详情页面。要怎么样才能快速的实现这个功能呢!那下面由笔者来告诉你如何三行代...

【Silverlight】Bing Maps学习系列(九):自定义功能导航条(Custom NavigationBar)

微软Bing Maps Silverlight Control实现了最基本的地图呈现功能,其功能其他是非常的强大,可以支持很多的扩展功能开发,本文通过自定义功能导航菜单为例介绍基于Bing Maps ...

10 导航控制器UINavigationController、导航条navigationBar、界面通信(属性传值、代理传值、单例传值)

1、UINavigationController 导航控制器UINavigationController:导航控制器,它用来管理多个视图控制器。 导航控制器可以认为是管理控制器的控制器,主要管理有层...

iOS编程如何在导航条上创建上下文按钮菜单

有时候在iOS编程中,需要在指定界面的导航条上创建用用自己的上下文菜单,如:应用分享,设置菜单。需要以代码形式灵活构建相应按钮和事件。先看代码:         - (void)createM...
  • leemboy
  • leemboy
  • 2017年04月14日 01:56
  • 124

Photoshop轻松制作Apple网站导航条按钮

P>Photoshop教程,利用Photoshop模拟制作Apple.Com苹果网站的网站导航条按钮。最终大家可以去http://www.apple.com网站对比下效果。 1.新建立一...
  • DXMLCH
  • DXMLCH
  • 2014年04月18日 22:27
  • 716

react-native-vector-icons的简单使用,图片,按钮,标签视图,导航条

ICONS是可以直接使用图片名, 就能加载图片的三方,使用很方便, 你不需要在工程文件夹里塞各种图片, 节省很多空间,下面就来看看怎么使用吧! 1. 首先打开terminal进入到我们的工程文件夹下...

HTML5 经量级框架 jQuery Mobile Bar(后退,多按钮,controlgroup,horizontal,导航条定义fixed,全屏模式) - 7.5

1.后退 后退   data-add-back-btn="true" 2.多按钮的footer工具栏                         删除           添...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:navigationBar导航条和navigationItem设置:基本搞定导航条上的文字和按钮以及各种跳转
举报原因:
原因补充:

(最多只允许输入30个字)