我想让我的UITabBarItem的大小比其他按钮更大,所以我在TabBarController的子类中尝试了这个:
var button = UIButton(type: .Custom)
button.frame = CGRectMake(0.0, 0.0, buttonImage.size.width, buttonImage.size.height)
button.setBackgroundImage(buttonImage, forState: .Normal)
button.setBackgroundImage(highlightImage, forState: .Highlighted)
var heightDifference: CGFloat = buttonImage.size.height - self.tabBar.frame.size.height
if heightDifference < 0 {
button.center = self.tabBar.center
}
else {
var center = self.tabBar.center
center.y = center.y - heightDifference / 2.0
button.center = center
}
self.view.addSubview(button)
它工作得很好因为现在我的BarButtonItem(预期行为)上面有一个Button但现在这个新按钮阻止了应该通过barbuttonitem处理的TouchEvents,任何想法我怎么能解决这个问题?我按照this文章获取了这个新的按钮:
解决:
我需要的只是禁用我的按钮的用户交互。
答案 0 :(得分:1)
您可以尝试下面的UIButton Clicked事件代码,例如
-(void)clickedEvent:(id)sender{
.... some code
[self.tabBarController setSelectedIndex:2];
..... some code
}
希望它应该有用。