我在swift中创建一个form builder
,我希望将textFields,Labels,Buttons等元素分配给新创建的VC,或者应该在新VC中复制或动态创建它们。
这是我试图通过点击Save
按钮
我希望保存多个表单,因为我需要查看多个文本按钮标签才能查看它可以保存在新的viewcontroller中,新的VC应该以编程方式创建,因为我点击了保存按钮。像这样可以创建多个VC,因为我想要更多的表单和字母我可以通过其他TablView中的表单名称检索它们然后单击一个单元格相关的View-VC将出现带有文本按钮标签
@IBAction func saveAction(_ sender: Any)
{
let formFirstVC : UIViewController = UIViewController()
formFirstVC.view.addSubview(getFormView)
}
以下是我在Scroll视图中创建的现有VC中的图像。现在我希望应该有一个新的视图控制器,其中应该按照我在这种形式中创建的所有元素textFields / labels / buttons生成。
我想要什么
答案 0 :(得分:0)
试试这段代码:
//创建UIVIEW的扩展程序
extension UIView
{
func copyView() -> UIView?
{
return NSKeyedUnarchiver.unarchiveObjectWithData(NSKeyedArchiver.archivedDataWithRootObject(self)) as? UIView
}
}
然后在第二个视图控制器的ViewDidLoad中添加:
let view = UIView(frame: CGRectMake(0, 0,375,625));
view.backgroundColor = UIColor.greenColor();
let label = UILabel(frame: view.frame);
label.text = "test";
label.backgroundColor = UIColor.whiteColor();
view.addSubview(label);
let copyView = view.copyView();
let copyLabel = copyView?.subviews[0] as! UILabel;
view.backgroundColor = UIColor.blackColor();
label.text = "abc";
这将复制标签。您可以使用文本字段,按钮等替换标签。