UINavigationItem

UINavigationItem

  • 父类是NSObject
  • UINavigationBar(导航条)内容组件的模型。修改模型,系统底层会对导航条控件进行修改

UINavigationItem常见用法

  • 通过title设置item
    UIBarButtonItem *item1 = [[UIBarButtonItem alloc] initWithTitle:@"返回" style:UIBarButtonItemStyleDone target:self action:@selector(back)];
  • 通过图片设置item
  // 获取图片
   UIImage *image = [UIImage imageNamed:@"navigationbar_friendsearch"];
   // 在iOS7之后,默认会将导航条上按钮的图片渲染成蓝色,需要返回一个没有渲染的图片给你
   image = [image imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal];

   UIBarButtonItem *item2 = [[UIBarButtonItem alloc] initWithImage:image style:UIBarButtonItemStyleDone target:nil action:nil];
  • 通过按钮设置item
   // 显示多张图片,不同状态,用按钮
   UIButton *btn = [UIButton buttonWithType:UIButtonTypeCustom];
   [btn setImage:[UIImage imageNamed:@"navigationbar_friendsearch"] forState:UIControlStateNormal];
   [btn setImage:[UIImage imageNamed:@"navigationbar_friendsearch_highlighted"] forState:UIControlStateHighlighted];
   // 按钮自适应,根据图片计算尺寸
   [btn sizeToFit];
   UIBarButtonItem *item3 = [[UIBarButtonItem alloc] initWithCustomView:btn];

   // 右边item数组(从最右面开始设置)
   self.navigationItem.rightBarButtonItems = @[item,item1,item2];

你可能感兴趣的:(UINavigationItem)