иметь пользовательский UIView в контроллере UIView - PullRequest
0 голосов
/ 12 февраля 2019

Я создал класс UIView и реализовал его внутри viewcontroller.Тем не менее, у меня есть некоторые другие вещи в контроллере представления, с которыми я хочу иметь возможность взаимодействовать, но я не могу этого сделать из-за присоединенного представления.

как мне взаимодействовать с базовым контроллером представления во время пользовательского пользовательского интерфейсаприсутствует в viewcontroller

var tripView: TripView!

    override func viewDidLoad() {
        super.viewDidLoad()
        tripView = TripView(frame: CGRect.zero)
        self.view.addSubview(tripView)
        // AutoLayout
        tripView.autoPinEdgesToSuperviewEdges(with: UIEdgeInsets.zero)

    }

Ответы [ 2 ]

0 голосов
/ 12 февраля 2019

Вы должны назначить правильный индекс вашим представлениям, используя следующие методы из UIView .Методы экземпляра: aboveSubview и underSubview или insertSubview .

Из обзора UIView

Представления могутбыть вложенными в другие представления для создания иерархий представлений, которые предлагают удобный способ организации связанного содержимого.Вложение представления создает отношения родитель-потомок между вложенным дочерним представлением (известным как подпредставление) и родителем (известным как суперпредставление).Родительское представление может содержать любое количество подпредставлений, но каждое подпредставление имеет только одно суперпредставление.По умолчанию, когда видимая область подпредставления выходит за пределы его суперпредставления, отсечение содержимого подпредставления не происходит.Надеюсь, это поможет!

0 голосов
/ 12 февраля 2019

Вы можете сделать

class TripView:UIView {

    // add this
class TransView:UIView {

    var imgV1:UIImageView!
    var imgV2:UIImageView!

    override func point(inside point: CGPoint, with event: UIEvent?) -> Bool {

        return imgV1.frame.contains(point) ||  imgV2.frame.contains(point) // or ![imgV1,imgV2].filter{$0.frame.contains(point)}.isEmpty
    }

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