0
我做的部件。我需要用動畫改變細胞高度。當點擊「顯示更多」時,去額外的控制。 enter image description hereUITableView單元格高度動畫
我寫了這個代碼
tableView.beginUpdates()
showModes(alpha: 1, duration: 0.2, delay: 0.1)
tableView.endUpdates()
func showModes(alpha: CGFloat, duration: CGFloat, delay: CGFloat) {
if tableView.numberOfRows(inSection: 0) != 0 {
for i in 0...tableView.numberOfRows(inSection: 0)-1 {
let indexPath = IndexPath(row: i, section: 0)
if let cell = tableView.cellForRow(at: indexPath) as? WidgetCell {
UIView.animate(withDuration: TimeInterval(duration), delay: TimeInterval(delay) ,animations: {
if alpha == 0 {
cell.favoriteConstraint.constant = -45
} else {
cell.favoriteConstraint.constant = 10
}
cell.favoriteMode.alpha = alpha
self.tableView.layoutIfNeeded()
})
}
}
}
}
但它不工作的順利開展。它會劇烈地抽動和抽動。我怎樣才能讓這個工作順利進行,例如,在Apple的天氣部件中?
是的,所有加入 倍率FUNC viewDidLoad中(){ super.viewDidLoad() ledControllers = readLED() self.tableView.estimatedRowHeight = 300 self.tableView.rowHeight = UITableViewAutomaticDimension } 我錄製了一段視頻以使其更清晰。第一個單元展開,然後纔開始動畫。我希望它很像天氣小工具 https://youtu.be/f4D7NnoyWrQ P.S. Судяпоникувыговоритепорусски? – MacSergey