将事件从UIButton传递到TabBarItem

时间:2016-09-06 14:51:08

标签: ios uibutton swift2 uitabbar uitabbaritem

我想让我的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文章获取了这个新的按钮:

我想要的是这样的: enter image description here

解决:

我需要的只是禁用我的按钮的用户交互。

1 个答案:

答案 0 :(得分:1)

您可以尝试下面的UIButton Clicked事件代码,例如

-(void)clickedEvent:(id)sender{
    .... some code
    [self.tabBarController setSelectedIndex:2];
    ..... some code
}

希望它应该有用。