首页 > 代码库 > UINavigationController详解(二)

UINavigationController详解(二)

@UINavigationBar-----(是一个View)基本介绍

1.导航栏,和导航控制器一样,是一个容器用来显示提供的其他对象的内容

2.导航栏显示的内容,通过设置UINavigationItem展示,每个controller都有专属的navigationItem

3.导航栏的高度:

    iPhone :     竖屏 44    横屏  32

    iPad:          44

4.配置外观:背景图片,背景颜色,style等等



@UINavigationItem------是一个NSObject(主要按钮UIBarButtonItem)

1.提供navigationBar的显示内容.导航栏是唯一的,每个controller都要设置

2.常用属性:leftBarButtonItem(leftBarButtonItems 组合,用数组存),rightBarButtonItem,backBarButtonItem,title,titleView

3.UIBarButtonItem,navigationBar上显示的按钮,navigationItem上需要设置的,可以使用系统提供的

4.backBarButtonItem是上一级navigationItem控制的

5.@property(nonatomic,copy)   NSString *prompt;     // Explanatory text to display above the navigation bar buttons.



@这里重点介绍下@

UIBarButtonItem 是一个 UIBarItem,是一种专门放在bar上的特殊button,UIBarItem是一个NSObject

// 系统自带的符号

1.UIBarButtonItem *leftButton = [[UIBarButtonItem allocinitWithBarButtonSystemItem:UIBarButtonSystemItemAction target:self action:@selector(selectLeftAction:)];

UIBarButtonSystemItemAction的风格,这是系统自带的按钮风格,看下图,你不用一个个试验,你也知道想用那个item,如下图:



// 自定义文字---backBarButtonItem  右边"Back"按钮

2. self.navigationItem.backBarButtonItem = [[UIBarButtonItem alloc]initWithTitle:@"返回style:UIBarButtonItemStyleDone target:nil action:nil];


// 设置所有UINavigationBar文本的属性

NSDictionary *attributes =@{NSFontAttributeName: [UIFont fontWithName:@"Futura"size:18],

 NSForegroundColorAttributeName: [UIColor redColor]};

[[UINavigationBar appearance]setTitleTextAttributes:attributes];




UINavigationController详解(二)