关于导航控制器UIBarButtonItem自定义

UIBarButtonItem提供自定义的创建

UIBarButtonItem *item = [[UIBarButtonItem alloc] initWithCustomView:(nonnull UIView *)];

1、无效的自定义

UIButton *but = [[UIButton alloc] init]; 

根据需求设置相关属性

UIBarButtonItem *myItem = [[UIBarButtonItem alloc] initWithCustomView:but];

在需要添加返回的控制器的上一个控制器中

self.navigationItem.backBarButtonItem = myItem;

运行发现是系统定义的返回,自定义的无效

2、有效的自定义

self.navigationItem.leftBarButtonItem = myItem;

此时是有效的

注:back在自定义时比较特殊

注:通过UIBarButtonItem 的initWithImage自定义时,往往受系统的影响同样达不到效果
 

你可能感兴趣的:(关于导航控制器UIBarButtonItem自定义)