首页 文章

UIButton子类忽略'Touch Up Inside'事件

提问于
浏览
0

我有一个UIButton的子类:

import UIKit
    class CustomButton: UIButton {

        required init?(coder decoder: NSCoder) {
            super.init(coder: decoder)

            //Customizing the button appearance
        }
    }

在界面构建器中,在故事板中,在我的主视图控制器下,我拖放了一个库存按钮,并从下拉菜单中将其“Custom Class”更改为CustomButton .

将它的'Touch Up Inside'活动连接到IBAction .

外观的自定义代码显示,但 button is not firing the 'Touch Up Inside' .

当我检查子类内的触摸事件(触摸开始,结束,吃)时,按钮似乎正在接触 .

2 回答

  • 2

    尝试在属于UIButton的子视图上禁用用户交互 . 这将允许手势继续到按钮本身 .

    userInteractionEnabled = false
    
  • 0

    发现问题:

    当我自定义按钮时,我添加了一个UIVisualEffectView作为覆盖整个框架的子视图,并取消了按钮能够采取的任何事件 . 非常不幸 .

    我不得不使用UIView子类并添加一个轻击手势来模仿触摸事件 .

相关问题