如何限制UITableView的行数,然后在查看所有按钮上显示所有行,单击swift iOS



我想限制tableView的行数比如我想一开始只显示2行如果用户点击"按钮,然后显示所有行。tableView的data (array)来自CoreData。我已经在另一个ViewController中输入(保存)了所有的数据,并在另一个ViewController上获取数据。可能存在数据为nil的情况。目前,我像这样显示所有行——>返回数组中。但是我不知道如何达到我的条件?

您只需要一个属性来指示是否要显示所有行。

var showAllRows = false

numberOfRowsInSection数据源方法中检查该值:

func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
if showAllRows {
return array.count
} else {
return min(2, array.count)
}
}

然后您的按钮处理程序需要更新showAllRows并重新加载表视图。

showAllRows = true
tableView.reloadData()

声明布尔变量,

var showMoreRows = false

func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
if showMoreRows {
return array.count
} else if array.count > 2 {
return 2
} else {
return 0
} 

再次点击触发事件,如

func showMoreRowsClick() {
self.showMoreRows.toggle()
self.tableView.reloadData()
}

相关内容

  • 没有找到相关文章

最新更新