就像@rmaddy说的,你需要将这些textViews存储在一个数组中。您还需要添加约束到textViews,帮助他们发挥好与自动布局
class MyViewController : UIViewController {
var textViews = [UITextView]()
func createUI() -> Void {
for i in 1...3 {
var textView = UITextView()
self.automaticallyAdjustsScrollViewInsets = false
textView.center = self.view.center
textView.textAlignment = NSTextAlignment.justified
textView.textColor = UIColor.blue
textView.backgroundColor = UIColor.lightGray
self.view.addSubview(textView)
var vertContraint : NSLayoutConstraint
if (i == 1) {
vertContraint = NSLayoutConstraint(item: textView, attribute: .top, relatedBy: .equal, toItem: self.topLayoutGuide, attribute: .bottom, multiplier: 1.0, constant: 0.0)
} else {
vertContraint = NSLayoutConstraint(item: textView, attribute: .top, relatedBy: .equal, toItem: textViews[i - 1], attribute: .bottom, multiplier: 1.0, constant: 8.0)
}
//Do the same for your leading, trailing edges
textView.addConstraints([/*vertContraint, leadingContr, trailingContr*/])
textViews.append(textView)
}
}
}
您需要设置textView的框架,使其具有大小。 – brimstone
*“有能力控制它”*是什么意思? – rmaddy
首先,你是在同一个地方创建textView(self.view.center),其次,如果你想控制textView,你必须为每个都设置专用的textview插座。 – Roy