iOS 11 导航栏按钮偏移问题

  iOS 11之前  ,导航栏偏移量是正常显示的 ,不需要修改什么, 如下: 


UIButton *leftButton = [UIButton buttonWithType:UIButtonTypeCustom];

    leftButton.frame = CGRectMake(002727);

    [leftButton setImage:[UIImage imageNamed:@"back1.png"forState:UIControlStateNormal];

    self.navigationItem.leftBarButtonItem = [[UIBarButtonItem alloc]initWithCustomView:leftButton];

    [leftButton addTarget:self action:@selector(backButton) forControlEvents:UIControlEventTouchUpInside];


但iOS 11 之后显示偏移严重 ,简单粗暴的方法就是 改变按钮的 contentEdgeInsets和imageEdgeInsets的值成功改变了按钮的偏移问题 

UIButton *leftBtn = [[UIButton allocinitWithFrame:CGRectMake(0,044,44)];

    leftBtn.contentEdgeInsets =UIEdgeInsetsMake(0, -30,00);

    leftBtn.imageEdgeInsets =UIEdgeInsetsMake(0, -25,00);

    [leftBtn setImage:[UIImage imageNamed:@"back1.png"]forState:UIControlStateNormal];

    [leftBtn addTarget:self action:@selector(backButton)forControlEvents:UIControlEventTouchUpInside];

    UIBarButtonItem *leftItem = [[UIBarButtonItem allocinitWithCustomView:leftBtn];

    self.navigationItem.leftBarButtonItems =@[leftItem];


猜你喜欢

转载自blog.csdn.net/xtyzmnchen/article/details/78275092