当前位置:  开发笔记 > 编程语言 > 正文

如何在UINavigationBar中水平放置backIndicatorImage

如何解决《如何在UINavigationBar中水平放置backIndicatorImage》经验,为你挑选了1个好方法。

我使用此代码将插图添加到backIndicator导航栏的图像。但是,这仅适用于图像的垂直定位。我只能将图像移至顶部或底部,而不能移至左侧或右侧。看起来左/右插图无效。我不确定可能是什么问题。

 UIEdgeInsets insets = UIEdgeInsetsMake(0, 20, 0, 0); //(20,0,0,0) works fine
 UIImage *backArrowImage = [[UIImage imageNamed:@"Back"] imageWithAlignmentRectInsets:insets];

 [[UINavigationBar appearance] setBackIndicatorImage:backArrowImage];
 [[UINavigationBar appearance] setBackIndicatorTransitionMaskImage:backArrowImage];

我也试过这个:

  UIImage * backArrowImage =[[UIImage imageNamed:@"Back"]resizableImageWithCapInsets:UIEdgeInsetsMake(0, 20, 0, 0) resizingMode:UIImageResizingModeStretch];

如果无法做到这一点,我是否需要返回添加自定义后退按钮?



1> zhoujialei..:

我已经尝试了很多方法,终于对我有用,您可以重新绘制图片,方法如下:

UIImage *arrow = [UIImage imageNamed:@"Back_Normal"];
UIGraphicsBeginImageContextWithOptions(CGSizeMake(arrow.size.width+10, arrow.size.height), NO, 0); // move the pic by 10, change it to the num you want
[arrow drawAtPoint:CGPointMake(10, 0)];
UIImage *finalImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();

然后将finalImage用作backIndicatorImage。

推荐阅读
sx-March23
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有