0

我正在使用UICollectionViewCompositionalLayout带有搜索控制器的 a:

像这样

问题:

当搜索控制器处于活动状态时,我无法点击部分标题中的 UI 按钮。但是该部分的 GestureRecognizer 工作正常。

当我不搜索任何内容时,它们都可以工作,如果在搜索时点击键盘上的“输入”,按钮就会开始工作。

我做错了什么?

4

1 回答 1

1

我刚刚找到了一个解决方案。对于那些有问题的人:我是这样添加目标的

let button: UIButton = {
        let button = UIButton(type: .custom)
        button.setTitle("See all", for: .normal)
        button.setImage(UIImage(systemName: "chevron.right", withConfiguration: buttonConfig), for: .normal)
        
        button.addTarget(self, action: #selector(myFunc), for: .touchUpInside)
        
        return button
    }()

删除 addTarget,并将其添加到类的 Init 上可以解决问题。

override init(frame: CGRect) {
    super.init(frame: frame)

    addSubview(button.addTarget)
    button.addTarget(self, action: #selector(myFunc), for: .touchUpInside)
}

我不知道为什么,但它有效。哈哈

于 2020-10-27T21:08:51.550 回答