swift5 - 如何将多个表单添加到 ScrollView
问题描述
这是一个很长的形式,我把它分解成多种形式,如下所示
问题:如何将多个表单添加到 ScrollView
A) 创建表格
表格1:
Class NameAndAddrView: UIView {
Lazy var MainStackView:UIStackView = {
Let St = UIStackView(arrangedSubView: [LblName, LblGivenName]
St.axis = .vertical
St.spacing= 10
St.distribution = .fillEqually
St.translatesAutoresizingMaskIntoConstraints = false
return St
}()
private let LblName:UILabel = {
let lbl = UILabel()
lbl.textColor = .lightGray
lbl.font = .systemFont(ofSize: 12)
lbl.text = "William"
return lbl
}()
private let LblGivenName:UILabel = {
let lbl = UILabel()
lbl.textColor = .lightGray
lbl.font = .systemFont(ofSize: 14)
lbl.text = "123 Broadway"
return lbl
}()
Override init(frame:CGRect) {
Super.init(frame:frame)
setup()
required init(coder aDcoder: NSCoder){
fatalError("init(coder:) has not been implemented")
}
func setup {
Self.addSubview(mainStackView)
// do layout for stack view here
}
Form2 and Form3 will be built in similar manner
B) 将表单(1,2,3) 添加到 ViewController
我想将多个表单添加到这个viewController
中怎么做?
Class myViewController: UIViewController {
let scrollview : UIScrollView {
let Sv = UIScrollView()
Sv.translatesAutoresiingMaskIntoConstraints = false
SV.alwaysBounceVertical = true
return SV
}()
let nameView : NameAndAddrView = {
let v = NameAndAddrView
v.translatesAutoResizingMaskIntoContraints = false
return v
}()
Override func viewDidLoad(){
Super.viewDidLoad()
setupViews()
}
func setupViews() {
View.addSubview(scrollview)
Hoow to add multiple forms into scrollview??
Scrollview.addSubview(nameView)
//layout here
}
解决方案
推荐阅读
- r - r 中 predict() 函数中的对象长度不匹配
- linux - 使用 shell 脚本和 cronjob 根据文件名中的日期移动 Apache Tomcat 日志文件
- python - Numpy.linalg.eig 函数返回零特征向量?
- python - 如何更改作为 pip install python-vlc 导入的模块 vlc 的 vlc 媒体播放器窗口的标题
- python - O365 无法导入邮箱
- react-native - React 从本地机器上的 docker 映像工作,但无法从 kubernetes 访问。服务看起来配置正确
- json - 使用 Hugo 创建一个 JSON,其中包含按工作日构建的所有用户帖子的列表
- r - 在闪亮的应用程序中使用 R Markdown .docx 模板
- r - R前向逐步回归中的多个最小模型
- python - def 函数中的额外元素