从下面开始查看时启动tableview。
我有一个用于标题的一维数组和一个用于cellen的二维数组。
从下面调用viewDidLoad()时是否可以启动tableview?所以你必须向上滚动。
非常感谢
我的标题代码:
override func tableView(_ tableView: UITableView, viewForHeaderInSection section: Int) -> UIView? {
let headerView = Bundle.main.loadNibNamed("TableViewCell1", owner: self, options: nil)?.first as! TableViewCell1
headerView.date.text = aHeaderDate[section]
headerView.backgroundColor = UIColor.white
return headerView
}
我的手机代码:
override func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell2 = Bundle.main.loadNibNamed("TableViewCell2", owner: self, options: nil)?.last as! TableViewCell2
let sectionTime = dimArrayTime[indexPath.section][indexPath.row]
cell2.time.text = sectionTime
return cell2
}
它应该是这样的:
在我看来,实现这一目标的最简单方法是转换表视图及其单元格:
镜像表视图:
tableView.transform = CGAffineTransform(scaleX: 1, y: -1)
在viewForHeaderInSection
和cellForRowAt
反映了这些观点:
headerView.transform = CGAffineTransform(scaleX: 1, y: -1)
cell.transform = CGAffineTransform(scaleX: 1, y: -1)
你可以试试下面的代码
[tableView reloadData];
int lastRowNumber = [tableView numberOfRowsInSection:0] - 1;
NSIndexPath* ip = [NSIndexPath indexPathForRow:lastRowNumber inSection:0];
[tableView scrollToRowAtIndexPath:ip atScrollPosition:UITableViewScrollPositionTop animated:NO];
您可以使用以下源代码
dispatch_after(time, dispatch_get_main_queue(), {
tableView.scrollToRowAtIndexPath(NSIndexPath(forRow: model.dataArray.count - 1, inSection: 0), atScrollPosition: .Bottom, animated: true)
})