将图像添加到UINavigationItem的titleView非常简单,但是当我在堆栈上推送一个新视图时,它会动画UINavigationItem向左滑动,以及titleView,并加载一个新的UINavigationItem。
我可以想出一些方法可以让这个图像保持不变,但它们看起来都非常糟糕。有没有正常的做法,我找不到?以下是将图像添加到视图控制器的UINavigationItem的代码:
UIImage *tImage = [[UIImage alloc] initWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@"logo_topbar" ofType:@"png"]];
UIImageView *tImageView = [[UIImageView alloc] initWithImage:tImage];
self.navigationItem.titleView = tImageView;
[tImage release];
[tImageView release];
谢谢你们/女士们
答案 0 :(得分:2)
你可以将相同的titleView添加到你希望它出现的所有UIViewControllers上,但我猜想这会让ImageView被动画到左边,一个新的同一个来自右边。
我看到的唯一方法就是像这样添加UIImageView:
[self.navigationController.view addSubview:tImageView];
或试试这个
[self.navigationController.navigationBar addSubview:tImageView];
答案 1 :(得分:2)
我想你可以将整个视图嵌入到超级视图中,静态图像位于现有UI下方。然后,您可以使UINavigationItems中的标题透明,这样按钮将在图像上滑动,但图像将保持不变。