我需要以编程方式创建3 UTextView
,而无需使用for
循环将每个{1}}设置为变量。
这是一个演示:
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)
}
我怎样才能制作3个文本视图并能够控制它?
答案 0 :(得分:1)
如果您需要从类中的其他方法访问生成的文本视图,或者甚至在发布的for
循环之后,那么您需要保留对它们的引用。
创建一个数组来保存每个数组。然后您可以稍后使用该阵列进行访问。如果您只在创建它们的方法中需要它,那么将数组创建为另一个局部变量。如果您需要从类中的其他位置访问文本视图,请将该数组设置为您的类(视图控制器)。
var textViews = [UITextView]()
然后在你的循环中添加:
textViews.append(textView)
稍后,当您需要访问文本视图时,您可以遍历数组或根据需要访问单个元素。
答案 1 :(得分:0)
就像@rmaddy所说,你需要将这些textView存储在一个数组中。您还需要向textViews添加约束,以帮助他们使用autolayout
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)
}
}
}
答案 2 :(得分:0)
一个简单的解决方案是为for i in 1...5 {
var textView = UITextView()
self.automaticallyAdjustsScrollViewInsets = false
textView.center = self.view.center
textView.textAlignment = NSTextAlignment.justified
textView.textColor = UIColor.blue
textView.backgroundColor = UIColor.lightGray
textView.tag = i
self.view.addSubview(textView)
}
中的每一个分配一个标签,然后分别通过指定的标签访问它。
以下是分配标签的演示:
UITextView()
您可以按标记访问任何指定的self.view.viewWithTag(1)
self.view.viewWithTag(2)
...
:
if($_FILES['fileName']['size'] > 100000) {
$error = 'Files size should be less than 100KB';
} else{
move_uploaded_file($_FILES['fileName']['tmp_name'], targetDir);
//targetDir is your directory where you want to save the file
}
希望它有所帮助!