我是新創建視圖,沒有界面構建器。 我使用NSLayoutAnchors
來創建視圖!使用NSLayoutAnchor時明確的約束
當我使用的視圖 - 控制創造了這樣一些觀點:
let borderView:UIView = {
let view = UIView()
view.translatesAutoresizingMaskIntoConstraints = false
view.backgroundColor = UIColor.lightGray
view.isUserInteractionEnabled = false
view.alpha = 0.5
return view
}()
然後我用這個觀點來邊境某事鑑於這樣的:
view.addSubview(borderView)
borderView.bottomAnchor.constraint(equalTo: headerView.bottomAnchor).isActive = true
borderView.leftAnchor.constraint(equalTo: headerView.leftAnchor).isActive = true
borderView.rightAnchor.constraint(equalTo: headerView.rightAnchor).isActive = true
borderView.heightAnchor.constraint(equalToConstant: 1).isActive = true
另一種觀點認爲我
然後試試這個:
informationView.addSubview(borderView)
borderView.topAnchor.constraint(equalTo: informationView.topAnchor).isActive = true
borderView.leftAnchor.constraint(equalTo: informationView.leftAnchor).isActive = true
borderView.rightAnchor.constraint(equalTo: informationView.rightAnchor).isActive = true
borderView.heightAnchor.constraint(equalToConstant: 1).isActive = true
,但看起來這種觀點有它的前一個約束高端展會約束錯誤!
如何在重用之前刪除borderView
約束條件?
的可能的複製[刪除影響一個UIView所有約束(http://stackoverflow.com/questions/24418884/remove-all-constraints -affecting-a-uiview) – dirtydanee
這不是重複的,因爲答案不是重用視圖(在這種情況下刪除約束不會有幫助) –