我有一個表查看從後端獲取遠程數據,這是所有工作正常,我試圖完成的是當用戶點擊任何單元格導航到其他ViewController(詳細控制器)當按下後退按鈕時,表格視圖應該滾動到選中的單元格而不回到頂部i'v如下所示嘗試tableView.scrollToRow
,但它不起作用?我知道,我打電話給我的加載數據tableView.reloadData()
工作的其他否則無法加載UITableView滾動到導航後選定的單元格
class feeds: UITableViewController {
var data = [AnyObject]()
override func viewDidLoad() {
super.viewDidLoad()
LoadData()
}
override func numberOfSections(in tableView: UITableView) -> Int {
return 1
}
override func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return data.count
}
override func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCell(withIdentifier: "reuseIdentifier", for: indexPath)
// configur tabl cell
return cell
}
func LoadData(){
// Fetch Feeds to dataArray
// Reload UITable View
self.tableView.reloadData()
let celloffset = UserDefaults.standard.integer(forKey: "celloffset")
if celloffset != 0{
let index = IndexPath(item: celloffset, section: 0)
self.tableView.scrollToRow(at: index, at: UITableViewScrollPosition.middle, animated: false)
}
}
override func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
UserDefaults.standard.set(indexPath.row, forKey: "celloffset")
// Navigate to Details VC
}
}
任何幫助或想法將非常感激
感謝您的回覆,但我發現了以下錯誤 ' 'NSRangeException',原因是:「 - [UITableView的_contentOffsetForScrollingToRowAtIndexPath:atScrollPosition:]:排(7)超越界限(5)部分(0) '' –
您正在嘗試滾動到不存在的行。 –
我知道它的意思,我的數組有25行後加載我選擇的單元格7當按下按鈕錯誤發生時 我認爲它是因爲數據重新加載! –