Der Versuch, scrollView mit Elementen zu erstellen, die im Code erstellt wurden, aber ich habe diese Elemente aufeinander überlagert. Scrollview selbst im Storyboard erstellt. Hier ist mein Code:Überlappende Elemente in der Bildlaufansicht
class ViewController: UIViewController {
@IBOutlet weak var scrollView: UIScrollView! {
didSet {
scrollView.backgroundColor = .yellow
}
}
lazy var im: UIImageView = {
let im = UIImageView(frame: CGRect(x: 10, y: 74, width: self.view.frame.size.width - 20, height: 200))
im.backgroundColor = .white
return im
}()
lazy var label: UILabel = {
let l = UILabel(frame: CGRect(x: 10, y: 284, width: self.view.frame.size.width - 20, height: CGFloat.greatestFiniteMagnitude))
l.numberOfLines = 0
l.lineBreakMode = .byWordWrapping
l.text = "crazy amount of text"
l.sizeToFit()
self.scrollView.contentSize = CGSize(width: self.view.frame.width, height: l.frame.height + 280)
return l
}()
override func viewDidLoad() {
super.viewDidLoad()
self.scrollView.addSubview(im)
self.scrollView.addSubview(label)
}
}
Weiß Rechteck ist Imageview!
Wie verhindert man die Überlappung dieser Elemente?
welcher Teil überlappte? – KKRocks
@KKRocks weißes Rechteck ist ImageView. ImageView wird also von Text überlagert, der dahinter stehen sollte. –