所以我正在制作这个ToDo-list应用程序。 这个程序有本地通知,但我只希望他们弹出如果tableview为空。保持简短:如何检查tableview是否为空?Swift - 如何检查TableView是否为空
这是我当前的代码:
import UIKit
class FirstViewController: UIViewController, UITableViewDelegate, UITableViewDataSource {
@IBOutlet var tblTasks : UITableView!
@IBOutlet weak var countLbl: UILabel!
var localNotification = UILocalNotification()
//For persisting data
let defaults = NSUserDefaults.standardUserDefaults()
override func viewDidLoad() {
super.viewDidLoad()
self.tblTasks.reloadData()
// localNotification.alertAction = "Je hebt nog taken die gedaan moeten worden!"
localNotification.alertBody = "Je hebt nog taken die gedaan moeten worden! Namelijk nog \(updateCount)"
localNotification.timeZone = NSTimeZone.localTimeZone()
localNotification.fireDate = NSDate(timeIntervalSinceNow: 10)
UIApplication.sharedApplication().scheduleLocalNotification(localNotification)
}
override func viewWillAppear(animated: Bool) {
self.tblTasks.reloadData()
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int{
return taskMgr.tasks.count
}
//Define how our cells look - 2 lines a heading and a subtitle
func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell{
let cell: UITableViewCell = UITableViewCell(style: UITableViewCellStyle.Subtitle, reuseIdentifier: "Default Tasks")
//Assign the contents of our var "items" to the textLabel of each cell
cell.textLabel!.text = taskMgr.tasks[indexPath.row].name
cell.detailTextLabel!.text = taskMgr.tasks[indexPath.row].description
cell.backgroundColor = UIColor.clearColor()
return cell
}
func tableView(tableView: UITableView, commitEditingStyle editingStyle: UITableViewCellEditingStyle, forRowAtIndexPath indexPath: NSIndexPath){
if (editingStyle == UITableViewCellEditingStyle.Delete){
taskMgr.removeTask(indexPath.row)
tblTasks.reloadData()
}
}
任何人谁可以帮我吗? 谢谢;)
你不检查表视图是空的。您检查数据源中是否有任何数据。 – rmaddy