- (IBAction)Textfield:(id)sender
{
i++;//global declaration int
UITextField *textfield=[[UITextField alloc]init];
textfield.tag=i;
NSDictionary *viewsDictionary = {@"give-textfield-name here":self.textfield};
NSArray *constraints = [NSLayoutConstraint constraintsWithVisualFormat:@"V:|-10-[give-textfield-name]-10-|" options:NSLayoutFormatAlignAllBaseline metrics:nil views:viewsDictionary];
[self.textfield addConstraints:constraints];
}
V:|-10-[give-textfield-name]-10-|
V代表垂直约束
| 视图控制器左右边距
10表示距离左边界的间距。
这是VisualConstraints的非常基础的内容,您需要进一步开发它。
还有一件事,在添加每个文本字段后,您需要更新scrollviewcontent大小。
将视图控制器设置为自由高度和宽度。[也要更新此内容]
希望这能帮助您开始编程。
这是Visual Constraints的链接。
这是Autolayout的链接。
首先,您需要将此视图分成三个uiviews。
第一个
包含您想要在button
点击时显示的两个text field
部分
2.第二个
包含该text fields
的上半部分
3.第三个
包含该text fields
的下半部分
然后为第一个视图
设置height constraint
和vertical spacing
bwn
第一-第二
和第二-第三
。
第一次,第一个视图
的height constraint
必须为零
第二-第三
的vertical spacing
的priority
大于第一-第二
的priority
。
当按钮
被点击时,改变第一个视图
的高度
,并且改变那个垂直空间
的优先级
。
您可以重写viewDidLayoutSubviews
方法,设置滚动视图的内容大小,然后调用[self.view layoutIfNeeded]
点击加号按钮创建文本框,并向文本框添加标签以从中获取数据。
let objForTextfield = UITextField()
objForTextfield.frame = CGRectMake(0, (scrollView.frame.origin.y + scrollView.frame.size.height ), 100, 100)
self.view.addSubview(objForTextfield)
scrollView.contentSize = CGSizeMake(scrollView.subviews.last?.frame.origin.y)!+(scrollView.subviews.last?.frame.size.height)!