2016-04-01 17 views
1

Oluşturduğum içeriği kaydırmak için bir UIScrollView öğesine ve bir containerView öğesine ihtiyacım var. o 2 öğeler için My kodudur:UIScrollView kaydırma yapmıyor ve doğru konumda görüntülenmiyor

var scrollView = UIScrollView() 
var darkener = UIView() 
var container = UIView() 

override func viewDidLoad() { 
     super.viewDidLoad() 

    self.view.backgroundColor = UIColor.clearColor() 
    darkener = UIView(frame: self.view.frame) 
    darkener.backgroundColor = UIColor.blackColor() 
    darkener.alpha = 0.0 
    self.view.addSubview(darkener) 

    scrollView.frame = self.view.bounds 
    scrollView.backgroundColor = UIColor.clearColor() 
    scrollView.contentSize = CGSizeMake(scrollView.frame.width, scrollView.frame.height+1) 
    scrollView.delegate = self 
    self.view.addSubview(scrollView) 


    container = UIView(frame: CGRectMake(0, scrollView.frame.height, scrollView.frame.width, scrollView.frame.height)) 
    container.backgroundColor = UIColor.whiteColor() 
    container.layer.masksToBounds = true 
    container.layer.cornerRadius = 10 
    scrollView.addSubview(container) 
} 

Sorun scrollView.frame.height Y noktası ekranda görünmez Set kez konteyner görünümünde (o altta), ama olmasıdır önceki kod, bu kod mükemmel bir şekilde çalıştı.

Ayrıca, içerikte kaydırma yapmama izin vermiyor. Orada neyin var?

Gerekirse, uygulamayı yükleyebilirim, ancak bence sorun yok.

+0

Bunu 'object-c' ile etiketlediniz, ancak Swift kodu gönderildiniz. Etiketi kaldırır ve hızlıca eklerseniz daha fazla yardım alabilirsiniz. – fsb

+0

Teşekkürler, benim hatam. – Sergio

cevap

0

Çözüldü. Ben sadece de DisplayDidLoad öğesinin de de frame ilan etmesini istedim:

TextField, ekranın sınırını bildirmek için ekranda sahip olduğum son etiket.

self.container.frame = CGRectMake(0, self.container.frame.origin.y, self.container.frame.width, textField2.frame.origin.y + textField2.frame.height - 60) 
self.scrollView.contentSize = CGSizeMake(self.container.frame.width, self.container.frame.height + 20.0) 

Ve şimdi Tamam çalışıyor.

İlgili konular