如何防止UIBarButtonItem的侧面区域可点击?

时间:2012-07-30 06:24:14

标签: iphone uibarbuttonitem

`Arrow display area which i want to prevent to click

每当我点击此区域时,操作也会执行此操作。

3 个答案:

答案 0 :(得分:4)

不要担心这种行为,iOS自动tapp附近元素如果没有其他元素。

如果你真的想阻止点击除了按钮,那么你必须将Element放在未使用的区域上,该区域应该从UIControl继承或能够获得UserInteraction

答案 1 :(得分:1)

我得到了解决方案。我在这两个UIBarButtonItem之间放了一个UIButton并使它自定义并且只选择它。

答案 2 :(得分:0)

另外,你可以试试这个:( Swift版本)

    let btnName = UIButton()
    btnName.setImage(UIImage(named: "settings_filled_25"), forState: .Normal)
    btnName.frame = CGRectMake(0, 0, 30, 30)
    btnName.addTarget(self, action: Selector("toggleRight"), forControlEvents: .TouchUpInside)

    var rightView = UIView()
    rightView.frame = CGRectMake(0, 0, 30, 30)
    rightView.addSubview(btnName)

    let rightBarButton = UIBarButtonItem()
    rightBarButton.customView = rightView
    self.navigationItem.rightBarButtonItem = rightBarButton