我有一個UITableView
,我需要顯示一個選擇器,所以我想縮短表框的高度,同時滾動到行以保持可見。UITableView - 調整大小的框架和滾動到行
我這樣做:添加的400個像素底部邊緣(通過設置到400的底部約束的距離),然後滾動到行
bottomConstraint.constant = 400
tableview.scrollToRow(at: currentIndexPath, at: .bottom, animated: true)
兩個命令都通過自己工作(I測試)。但結果是表格縮短了,所選行不會出現(例如,如果行是最後一行)。
顯然發生了什麼事情是在約束實際更新之前處理了滾動,因此如果行在約束更改之前是可見的,則在縮短表時它不會滾動。
任何想法?
每一個約束條件的不斷變化應該跟着一個view.layoutIfNeeded() –