【问题标题】:UITableViewCell mask selection zone/size of selection area?UITableViewCell 掩码选择区域/选择区域的大小?
【发布时间】:2018-08-16 14:44:36
【问题描述】:

有没有一种方法可以屏蔽自定义表格视图单元格上的某个区域,以便在您按下该区域时不会意外选择该单元格?下面是我的表格视图,我将进一步解释我想要实现的目标!

如您所见,我的 tableviewcell 是灰色的,并且有一个深灰色部分,我想屏蔽它,因此如果用户点击所述“屏蔽区域”,它不会突出显示或选择它分开的单元格的。灰色区域只是一个标准视图,没有特殊属性。考虑到这一点,有没有一种方法可以让视图充当 UITableViewCell 上的某种掩码或单独区域?

谢谢。

【问题讨论】:

    标签: ios swift uitableview tableview


    【解决方案1】:

    在你的单元类中,

    override func hitTest(_ point: CGPoint, with event: UIEvent?) -> UIView? {
        if yourViewToIgnore.point(inside: point, with: event) {
            return nil
        }
    
        return super.hitTest(point, with: event)
    }
    

    这将忽略对特定视图的触摸。

    然后你必须在设置cell.selectionStyle = .none之后自定义选择高亮

    【讨论】:

      【解决方案2】:

      您可以使用 UIGestureRecognizer 来确定单元格的哪个部分被按下。此链接上还有更多内容:https://stackoverflow.com/a/11071214/5858330

      希望对你有帮助!

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-07-26
        • 2013-01-10
        • 1970-01-01
        • 2015-01-18
        • 1970-01-01
        • 2014-05-23
        相关资源
        最近更新 更多