Swift3:如果为空则隐藏 UITableView
Swift3 : Hide UITableView if Empty
我有一个 table视图,我将其用作屏幕的一部分。
@IBOutlet var tableView: UITableView!
有时我有数据,有时我没有。
我只想在有数据时显示 table,在没有数据时隐藏它。
我尝试添加一个小于或等于选项的高度约束。但是如果我这样做,即使我有数据
,table视图也会被隐藏
我该怎么办?
我用谷歌搜索了一下,没有找到解决办法,所以在这里问一下。
免责声明:我是 iOS/Swift 开发的新手。很抱歉,如果这个问题已经得到回答
您可以像下面这样显示隐藏 tableView
。
您可以使用可能用于填充数据的数组或使用 tableView
属性 numberOfRowsInSection
.
检查计数
没有数据时
tableView.ishidden = true
有数据时
tableView.ishidden = false
或者您可以使用如下委托方法。
override func viewWillAppear(_ animated: Bool) {
if array.isEmpty {
self.tableView.isHidden = true
}
else {
self.tableView.isHidden = false
}
}
更好的方法是使用 didSet。
var dataArray: [String] = [] {
didSet {
if dataArray.count > 0 {
//Update Table Data
} else {
//Hide Table and show so info of no data
}
}
}
如果没有数据显示,设置 tableView.isHiden = true
。
你也可以试试这个,这样你就可以利用空 table space.
将出口设置为您的 table 高度限制并添加以下行
tableHeightConstraint.constant = array.count != 0 ? 250 : 0
我有一个 table视图,我将其用作屏幕的一部分。
@IBOutlet var tableView: UITableView!
有时我有数据,有时我没有。 我只想在有数据时显示 table,在没有数据时隐藏它。
我尝试添加一个小于或等于选项的高度约束。但是如果我这样做,即使我有数据
,table视图也会被隐藏我该怎么办?
我用谷歌搜索了一下,没有找到解决办法,所以在这里问一下。
免责声明:我是 iOS/Swift 开发的新手。很抱歉,如果这个问题已经得到回答
您可以像下面这样显示隐藏 tableView
。
您可以使用可能用于填充数据的数组或使用 tableView
属性 numberOfRowsInSection
.
没有数据时
tableView.ishidden = true
有数据时
tableView.ishidden = false
或者您可以使用如下委托方法。
override func viewWillAppear(_ animated: Bool) {
if array.isEmpty {
self.tableView.isHidden = true
}
else {
self.tableView.isHidden = false
}
}
更好的方法是使用 didSet。
var dataArray: [String] = [] {
didSet {
if dataArray.count > 0 {
//Update Table Data
} else {
//Hide Table and show so info of no data
}
}
}
如果没有数据显示,设置 tableView.isHiden = true
。
你也可以试试这个,这样你就可以利用空 table space.
将出口设置为您的 table 高度限制并添加以下行
tableHeightConstraint.constant = array.count != 0 ? 250 : 0