所以我想做的就是添加尽可能多的公司UIView,我想"复制粘贴"已经存在的UIView和公司的信息在一个水平的堆栈视图。
如图所示,我有一个"allCompaniesShow",这是一个水平堆栈视图,我希望在其中添加多个UIView(companyShow)。对于每个UIView(CompanyShow),我希望显示公司名称
我已经在控制器中初始化了它们
@IBOutlet weak var allCompaniesShow: UIStackView!
@IBOutlet weak var companyName: UILabel!
@IBOutlet weak var companyShow: UIView!
我在viewDidLoad()中创建了这样的公司
let companies = [
Company(owner: "jan"),
Company(owner: "henk"),
]
这就是我如何循环遍历对象数组来创建新视图
for company in companies {
companyName.text = company.owner
allCompaniesShow.addArrangedSubview(companyShow)
}
实际情况是,它只显示一个视图,所有者为"henk
你能告诉我如何使尽可能多的意见,有公司的基础上已经存在的看法?
谢谢大家!
1条答案
按热度按时间dpiehjr41#
对于这种情况,可以使用UITableView。
1-只需添加一个与堆栈大小相同的tableView并为其给予一个单元格
2-并将协议UITableViewDelegate和UITableViewDataSource添加到UIView控制器
3-在viewDidLoad方法中创建
tableView.delegate = self
和tableView.datasource = self
。或者,您可以从情节提要添加它们4-使用“numberOfRowsInSection”函数返回您想要的行数,在您的情况下返回公司计数的数量
5-最后对单元格使用“cellForRowAtIndexPath”方法