2
iOS的10,雨燕3.1動畫效果自動佈局約束不工作
我有一個名爲UIView
一個graphPopup
是UITableViewCell
我試圖動畫裏面。基本上,當有人點擊一個圖表時,出現一個彈出窗口,我希望它將其x
和y
設置到位。
我從點至點到位想要的彈出窗口幻燈片。這裏是我的代碼:
class TotalCell: UITableViewCell, ChartViewDelegate{
@IBOutlet weak var graphPopup: UIView!
@IBOutlet weak var popupConstraintY: NSLayoutConstraint!
@IBOutlet weak var popupConstraintX: NSLayoutConstraint!
func chartValueSelected(_ chartView: ChartViewBase, entry: ChartDataEntry, highlight: Highlight) {
//...
graphPopup.isHidden = false
//Set new auto layout constraints
self.popupConstraintX.constant = highlight.xPx-44
self.popupConstraintY.constant = highlight.yPx+18
//Animate (which does nothing)
UIView.animate(withDuration: 1.0, animations: {
self.graphPopup.layoutIfNeeded()
})
}
}
任何想法我可能做錯了什麼?如果我完全刪除動畫位,它的行爲方式相同,但我知道動畫正在被調用。
任何想法?
有兩個問題 - 您是否嘗試過在'self'上調用'layoutIfNeeded()',放入'graphPopup'?第二 - 你在哪裏隱藏彈出窗口?你有沒有試圖保持它始終可見?這很奇怪,但也許動畫發生時,它不可見? – Losiowaty