如何在iPhone应用程序的UINavigationBar中添加图像
在我的应用程序中,我想在导航栏中添加图像(徽标)。 我正在使用XCode 4.2和iOS 5。
我知道UINavigationBar
, UIToolBar
已经在iOS 5中进行了更改。所以iOS 4.2的UINavigationBar
代码将无法在iOS 5中工作。
我想在4.2和5版本的UINavigationBar
中支持显示图像。
我想在UINavigationBar
显示图像,就像下面的截图一样。
请在这方面提供帮助,如果有任何示例代码对我非常有帮助。
谢谢!!!
一种方法是使用UINavigationItem.titleView
和UINavigationItem.rightBarButtonItem
。 喜欢这个 :
viewController.navigationItem.titleView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"yourimage.png"]]; UIBarButtonItem * item = [[UIBarButtonItem alloc] initWithCustomView:[[UIImageView alloc] initWithImage:[UIImage imageNamed:@"yourimage2.jpg"]]]; viewController.navigationItem.rightBarButtonItem = item;
在这里,我使用UIImageView
作为自定义视图,但它可以是UIButton
与自定义图像。
另一种不使用viewController的方法
// Create your image UIImage *image = [UIImage imageNamed: @"logo.png"]; UIImageView *imageview = [[UIImageView alloc] initWithImage: image]; // set the image view to the title view self.navigationItem.titleView = imageview;
Swift版本:您可以创build一个协议扩展,以在视图控制器中使用该function
protocol Customizable { var navigationItem: UINavigationItem { get } } extension Customizable { func setNavBarLogo() { let logo = UIImage(named: "logo") let logoImageView = UIImageView(image: logo) self.navigationItem.titleView = logoImageView } }