Swift: TableView не прокручивается с настраиваемой панелью вкладок - PullRequest
0 голосов
/ 07 января 2020

У меня есть настраиваемая панель вкладок, в которой я отключаю щелчок в определенном месте.

class UserTabBar: BaseTabBar {

    override func draw(_ rect: CGRect) {
        super.addShape(for: .user)
    }

    override func point(inside point: CGPoint, with event: UIEvent?) -> Bool {
        let buttonRadius: CGFloat = 35
        return abs(self.center.x - point.x) > buttonRadius || abs(point.y) > buttonRadius
    }

}

Но в контроллере, обернутом панелью вкладок, есть таблица, и прокрутка не работает Как я могу ограничить это только для рамки панели вкладок:

    override func point(inside point: CGPoint, with event: UIEvent?) -> Bool {
        let buttonRadius: CGFloat = 35
        return abs(self.center.x - point.x) > buttonRadius || abs(point.y) > buttonRadius
    }

1 Ответ

0 голосов
/ 08 января 2020

Я решил мою проблему, используя:

    override func hitTest(_ point: CGPoint, with event: UIEvent?) -> UIView? {
        guard !clipsToBounds && !isHidden && alpha > 0, path.contains(point) else { return nil }

        for member in subviews.reversed() {
            let subPoint = member.convert(point, from: self)
            guard let result = member.hitTest(subPoint, with: event) else { continue }
            return result
        }

        return nil
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...