9

来自dox

  • 如果要使用自定义图像替换默认的 V 形,还需要创建自定义蒙版图像。iOS 7 使用遮罩使前一个屏幕的标题在导航转换期间出现或消失在 V 形中。要了解控制后退按钮和遮罩图像的属性,请参阅 UINavigationBar 类参考。

在 UINavigationBar 类参考中:

返回指标图像

后退按钮旁边显示的图像。@property(nonatomic, retain) UIImage *backIndicatorImage 讨论

如果要自定义返回指示器图像,还必须设置 backIndicatorTransitionMaskImage。可用性

Available in iOS 7.0 and later.

也可以看看

  @property backIndicatorTransitionMaskImage

在 UINavigationBar.h backIndicatorTransitionMaskImage 中声明

在推送和弹出转换期间用作内容掩码的图像。@property(nonatomic, retain) UIImage *backIndicatorTransitionMaskImage 讨论

如果要自定义返回指示器图像,还必须设置 backIndicatorImage。可用性

Available in iOS 7.0 and later.

也可以看看

  @property backIndicatorImage

在 UINavigationBar.h 中声明

请原谅我的无知,但提供的信息并没有告诉我太多。

是否有一个 Cocoa 类可以制作具有所需图像的蒙版?还是我需要提供框架、弧线等?还是我只是在编辑器中为我的图像制作黑色轮廓?

4

3 回答 3

38

backIndicatorTransitionMaskImage可见性遮罩。

在掩码图像中:

  • 带有 的像素alpha = 0将在导航转换期间覆盖移动的标题;
  • 在导航转换期间,带有 的像素对于移动的标题alpha = 1透明的。

因此,如果您想提供与本机后退指示器相同的可见性行为,您可以使用类似于以下的图像(utf-8 标志):

  1. 背面指示图:〱</li>
  2. 背面指示掩码:◀(仅黑色部分下方的文字可见)
于 2014-02-12T18:36:17.397 回答
5

我想这就是你要找的

self.navigationController.navigationBar.backIndicatorImage = [UIImage yourImage];
self.navigationController.navigationBar.backIndicatorTransitionMaskImage = [UIImage yourImage];
于 2013-09-23T15:55:55.633 回答
-2

这就是我所做的并且完美地工作

UIButton *backButton = [[UIButton alloc] initWithFrame:CGRectMake( 0, 0, 40, 40)];
[backButton setBackgroundImage:[UIImage imageNamed:@"backbutton.png"] forState:UIControlStateNormal];
UIBarButtonItem *barBackButtonItem = [[UIBarButtonItem alloc] initWithCustomView:backButton];
[backButton addTarget:self action:@selector(popViewController) forControlEvents:UIControlEventTouchUpInside];
self.navigationItem.leftBarButtonItem = barBackButtonItem;
self.navigationItem.hidesBackButton = YES;

“popViewController”看起来像这样

-(void)popViewController{
[self.navigationController popViewControllerAnimated:YES];

}

于 2013-09-29T22:24:13.173 回答