设置导航条的内容

设置导航条的内容,由栈顶控制器的NavgationItem决定.
    导航控制器必须要有根控制器.目的设置导航条的内容.
    
    如果设置了导航条的标题, 那么下一个push的子控制器的返回按钮就是上一个控制器的标题.
    
    UINavigationItem有以下属性影响着导航栏的内容
    
    左上角的返回按钮
    @property(nonatomic,retain) UIBarButtonItem *backBarButtonItem;
    
    中间的标题视图
    @property(nonatomic,retain) UIView *titleView;
    
    中间的标题文字
    @property(nonatomic,copy)   NSString  *title;
    
    左上角的视图
    @property(nonatomic,retain) UIBarButtonItem *leftBarButtonItem;
    
    右上角的视图
    @property(nonatomic,retain) UIBarButtonItem *rightBarButtonItem;

    设置导航条标题
    self.navigationItem.title = @"导航条标题"
    
    
    导航条上面的子控件位置由系统决定,我们自己只能决定控件的尺寸
    UIView *view = [[UIView alloc] initWithFrame:CGRectMake(0, 2000, 200, 35)];
    view.backgroundColor = [UIColor redColor];
    导航条的标题可以是一个自定义的UIView.
    self.navigationItem.titleView = view;


    
    设置导航条左边的内容为标题.
    Title:设置的标题
    style:样式,从ios7之后,这个地方设置什么都没有用了, 所以让它默认,它是一个枚举,直接可以写0.
    target: action: 点击时调用哪个对象的哪个方法.
    UIBarButtonItem *item = [[UIBarButtonItem alloc] initWithTitle:@"返回" style:0 target:self action:@selector(back)];
    
    
    设置左边的内容为图片
    initWithImage:要显示的图片.
    style:样式,从ios7之后,这个地方设置什么都没有用了, 所以让它默认,它是一个枚举,直接可以写0.
    target: action: 点击时调用哪个对象的哪个方法.
    UIBarButtonItem *item1 = [[UIBarButtonItem alloc] initWithImage:image style:UIBarButtonItemStyleDone target:nil action:nil];
    
    
    显示多张图片,不同状态,用按钮
    UIButton *btn = [UIButton buttonWithType:UIButtonTypeCustom];
    设置按钮正常状态下显示的图片
    [btn setImage:[UIImage imageNamed:@"navigationbar_friendsearch"] forState:UIControlStateNormal];
    设置按钮高亮状态下显示的图片
    [btn setImage:[UIImage imageNamed:@"navigationbar_friendsearch_highlighted"] forState:UIControlStateHighlighted];
    
    按钮自适应,根据当中的图片标题自动计算尺寸
    [btn sizeToFit];
    让导航条左侧或者右侧显示一个UIView.
    initWithCustomView:要显示的View.
    UIBarButtonItem *item = [[UIBarButtonItem alloc] initWithCustomView:btn];
    
    
    可以设置左右的内容为多个Item.
    self.navigationItem.rightBarButtonItems = @[item,item1,item2];

posted @ 2017-05-30 17:02  iFat  阅读(292)  评论(0编辑  收藏  举报