if count != 0 {
for i in stride(from: 0,to: Int(count!),by: 1) {
if i==0 {
let commodity = storeDetails?.storeSearchPickup.storeMaterialsDetails[i]
let balesPicked: Int = (commodity?.balesPicked)!
let balesRemaining: Int = (commodity?.balesRemaining)!
commoditySection.balepickupedlabeltext.text = String(balesPicked)
commoditySection.balesremaininglabeltext.text = String(balesRemaining)
commoditySection.commodityLabel.font = UIFont.boldSystemFont(ofSize: 16.0)
commoditySection.commodityLabel.text = commodity?.materialShortName
commoditySection.setCommodity(details: commodity!,index: Int((commodity?.materialId)!))
commoditySection.callback = self
commoditiesViewCount = commoditiesViewCount+1
print("commoditiesViewCount\(commoditiesViewCount)")
self.currentSelectedCommodity = commodity
} else {
let commodity = storeDetails?.storeSearchPickup.storeMaterialsDetails[i]
var commodityView = CommoditySection(frame:CGRect(x: 0,y: 0,width: commoditycontainer.frame.width,height: CGFloat.leastNonzeroMagnitude));
self.commoditycontainer.addSubview(commodityView)
commodityView.setCommodity(details: commodity!,index: Int((commodity?.materialId)!))
commodityView.translatesAutoresizingMaskintoConstraints = false
commodityView.callback = self
if(currentCommodityView != nil) {
let verticalConstraint = NSLayoutConstraint(item: commodityView,attribute: NSLayoutConstraint.Attribute.top,relatedBy: NSLayoutConstraint.Relation.equal,toItem: self.currentCommodityView,attribute: NSLayoutConstraint.Attribute.bottom,multiplier: 1,constant: 0)
let leading = NSLayoutConstraint(item: commodityView,attribute: NSLayoutConstraint.Attribute.leading,constant: 0)
let trailing = NSLayoutConstraint(item: commodityView,attribute: NSLayoutConstraint.Attribute.trailing,constant: 0)
NSLayoutConstraint.activate([verticalConstraint,leading,trailing])
commodityheightconstraint.constant = commodityheightconstraint.constant + commodityView.frame.height
print("commoditiesViewCount\(commoditiesViewCount)")
} else {
let verticalConstraint = NSLayoutConstraint(item: commodityView,toItem: self.commoditySection,trailing])
commodityheightconstraint.constant = commodityheightconstraint.constant + commodityView.frame.height
print("commoditiesViewCount\(commoditiesViewCount)")
}
commodityView.commodityLabel.font = UIFont.boldSystemFont(ofSize: 16.0)
commodityView.commodityLabel.text = commodity?.materialShortName
let balesPicked: Int = (commodity?.balesPicked)!
let balesRemaining: Int = (commodity?.balesRemaining)!
commodityView.balepickupedlabeltext.text = String(balesPicked)
commodityView.balesremaininglabeltext.text = String(balesRemaining)
self.currentCommodityView = commodityView;
commoditiesViewCount = commoditiesViewCount+1
print("commoditiesViewCount\(commoditiesViewCount)")
isSecondViewAdded = true
}
}
}
我是iOS开发的新手,但是经验丰富的Android开发人员
我有一个容器,需要在其中添加和删除视图
当我添加第一个视图时,它正确地适合容器;当在第一个视图下实用地添加另一个视图时,它覆盖了容器下的另一个视图
两种视图的高度均为CGFloat.leastNonzeroMagnitude
需要根据所包含的视图设置动态高度