Кодирование макета в ScrollView, пожалуйста - PullRequest
0 голосов
/ 06 ноября 2018

У меня есть вопросы по компоновке ScollView.

Прежде всего, пожалуйста, смотрите изображение. В частности, то, что я хотел бы реализовать, я хотел бы отобразить одну «метку» на одном экране, как изображение.

enter image description here

Тем не менее, прокрутка перекрывает две метки на одном экране, как это изображение (перекрывающиеся метки совпадают с метками предыдущей и следующей страниц).

enter image description here

Код выглядит следующим образом.

scrollView.contentSize.width = self.scrollView.frame.width * CGFloat(scrollData.count)

    var i = 0

    for data in scrollData {
        let view = CustomView(frame: CGRect(x: 5 + (self.scrollView.frame.width * CGFloat(i)), y: 0, width: self.scrollView.frame.width - 10, height: self.scrollView.frame.height))
        view.textView.text = data.placeHolder
        view.textView.tag = i + textTagValue
        view.tag = i + viewTagValue
        self.scrollView.addSubview(view)

        let label = UILabel(frame: CGRect.init(origin: CGPoint.init(x: self.view.bounds.width, y: 20), size: CGSize.init(width: 0, height: 40)))
        label.text = data.title
        label.font = UIFont.boldSystemFont(ofSize: 20)
        label.sizeToFit()
        label.tag = i + tagValue
        if i == 0 {
            label.center.x = view.center.x
        } else {
            label.center.x = view.center.x - self.scrollView.frame.width / 5
        }
        label.textColor = UIColor.gray
        self.scrollView.addSubview(label)

        i += 1
    }

Я хотел бы рассказать вам лучшие практики. Также, если вам нужна дополнительная информация, пожалуйста, дайте мне знать.

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