废话不多说,直接上代码
self.navigationItem.rightBarButtonItem = [[UIBarButtonItem alloc] initWithCustomView:self.rightBtn];
按钮不显示的bug
- (UIButton *)rightBtn
{
if (!_rightBtn) {
_rightBtn = [[UIButton alloc] init];
[_rightBtn setImage:[UIImage imageNamed:@"image.png"] forState:UIControlStateNormal];
}
return _rightBtn;
}
以上代码看似没有任何问题,但是在iOS 10系统上面,按钮就是显示不出来,在其他版本的系统内显示正常
解决方法(给按钮赋值指定大小即可)
- (UIButton *)rightBtn
{
if (!_rightBtn) {
_rightBtn = [[UIButton alloc] initWithFrame:CGRectMake(0,0,44,44)];
[_rightBtn setImage:[UIImage imageNamed:@"image.png"] forState:UIControlStateNormal];
}
return _rightBtn;
}
更多解决方案