如何以编程方式将UIBarButton添加到以编程方式创建的NavBar?

时间:2015-05-05 11:39:57

标签: ios objective-c uinavigationbar uibarbuttonitem uinavigationitem

我正在使用以下代码更改视图控制器:

 [self.slidingViewController performSegueWithIdentifier:@"FindScoresController" sender:self.slidingViewController];

segue是PUSH

现在我想以编程方式添加UINavigationBar。我正在使用的代码是:

// Not required if viewController is pushed from previous viewController
UINavigationBar *navbar = [[UINavigationBar alloc]initWithFrame:CGRectMake(0, 0, self.view.frame.size.width, 64)];
UIColor *barColor = [[UIColor alloc]initWithRed:82/255.0f green:167/255.0f blue:192/255.0f alpha:1.0f];

if (floor(NSFoundationVersionNumber) <= NSFoundationVersionNumber_iOS_6_1) {
    // iOS 6.1 or earlier
    navbar.tintColor = barColor;
} else {
    // iOS 7.0 or later
    navbar.barTintColor = barColor;

   navbar.translucent = NO;
}
[self.view addSubview:navbar];

成功添加导航栏。 现在我想添加带有自定义图像的左右自定义按钮。 但我无法这样做。

我用来添加正确UIBarButton项目的代码:

 UIBarButtonItem *flipButton = [[UIBarButtonItem alloc]
                               initWithTitle:@"Flip"
                               style:UIBarButtonItemStyleBordered
                               target:self
                               action:@selector(flipView:)];
self.navigationItem.rightBarButtonItem = flipButton;

但它没有显示任何效果。

我也试过这段代码:

UIBarButtonItem * item = [[UIBarButtonItem alloc] initWithCustomView:[[UIImageView alloc] initWithImage:[UIImage imageNamed:@"yourimage2.jpg"]]];    
self.navigationItem.rightBarButtonItem = item; 

所有这些代码我都是用ViewDidLoad方法编写的。

0 个答案:

没有答案