在UINavigationBar的子类中设置backButton框架

时间:2012-04-20 05:17:31

标签: ios ipad uinavigationbar

对于使用ARC的iOS 5.0中的iPad,我使用UINavigationBar的子类来创建一个带有更宽条的自定义导航栏..此导航栏上的后退按钮需要垂直居中,因为我' m使用更宽的后退按钮。现在,它在自然的地方拥抱底部..我知道我可以在每个视图控制器的viewDidLoad方法上使用UINavigationItem重新定位它。

但是有可能在我创建的UINavigationBar的自定义子类中抓取按钮,这样我可以使用layoutSubviews将它放在垂直居中的位置吗?

先谢谢你的帮助。

2 个答案:

答案 0 :(得分:1)

请试试这个,我想这可以帮到你

// image for my back button
UIImage *backButtonImage= [UIImage imageNamed:@"Back.png"];
UIButton *leftBarButton = [UIButton buttonWithType: UIButtonTypeCustom];

// Setting the image for the back button
[leftBarButton setBackgroundImage: backButtonImage forState:UIControlStateNormal];  
[leftBarButton addTarget: self action:@selector(backToMenu:) forControlEvents:UIControlEventTouchUpInside];

 // setting the frame for the back button
leftBarButton.frame = CGRectMake(0, 0, 65, 32);  

// setting the custom button to navigationbars back button
self.navigationItem.leftBarButtonItem = [[UIBarButtonItem alloc] initWithCustomView: leftBarButton];

答案 1 :(得分:0)

你试过了吗?

 navigationBar.backItem.leftBarButtonItem