Datepicker不会显示在自定义UITableViewCell类中

时间:2018-01-07 05:39:00

标签: ios swift uitableview uidatepicker

我尝试保留一个单独的自定义单元格类,但不知何故,我从故事板拖入它的日期选择器拒绝在我运行它之后显示。

import UIKit

class eventViewController: UIViewController,UITextViewDelegate,UIScrollViewDelegate,UITableViewDelegate,UITableViewDataSource  {
   @IBOutlet weak var timeTableView: UITableView!
   @IBOutlet weak var eventText: UITextView!
   @IBOutlet weak var scrollView: UIScrollView!

   override func viewDidLoad() {
      super.viewDidLoad()
      // Do any additional setup after loading the view.
      self.eventText.delegate = self
      self.scrollView.delegate = self
      self.timeTableView.delegate = self
      self.timeTableView.dataSource = self
      self.timeTableView.register(startDateCell.self, forCellReuseIdentifier: "startDateCell")   
   }

   func numberOfSections(in tableView: UITableView) -> Int {
      return 1
   }

   func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
      return 3
   }

   func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
      let cell = tableView.dequeueReusableCell(withIdentifier: "startDateCell", for: indexPath) as! startDateCell
      //cell.startDatePicker.date = Date()
      //cell.text = "anything"
      return cell
   }
}

class startDateCell: UITableViewCell { 
   @IBOutlet weak var startDatePicker: UIDatePicker!
}

我在自定义单元格中将插座连接到我的datePicker,并且我还在检查器中将自定义单元类定义为startDateCell,并在视图控制器中注册了自定义单元格。它会抛出一个运行时错误,说datepicker是nil。

有人可以解释为什么它没有出现吗?

1 个答案:

答案 0 :(得分:0)

您是否可以从viewDidLoad()中删除以下代码,并确保在故事板中将自定义tableviewcell的重用标识符设置为“startDateCell”并重试?

self.timeTableView.register(startDateCell.self, forCellReuseIdentifier: "startDateCell")