ios - swift中的错误'线程1:断言失败'
问题描述
委托部分似乎有错误,但我不知道如何解决。在 tableView 和 pickerView 中使用了委托。这是我的代码:
func bindViewModel() {
let input = MainViewModel.Input(loadData: loadData.asSignal(onErrorJustReturn: ()))
let output = viewModel.transform(input: input)
output.loadData.bind(to: tableView.rx.items(cellIdentifier: "mainCell", cellType: MainCell.self)) { row, element, cell in
cell.nameLbl.text = element.nickname
cell.titleTxtField.text = element.title
cell.contentTxtView.text = element.description
cell.postImage.image = UIImage(named: element.media)
cell.timeLbl.text = element.date
cell.sirenBtn.rx.tap.subscribe(onNext: { _ in
self.selectIndexPath.accept(row)
}).disposed(by: self.disposeBag)
}.disposed(by: disposeBag)
}
func setUI() {
let cell = MainCell()
doneBarButton.rx.tap.subscribe(onNext: { _ in
let selectRow = self.pickerView.selectedRow(inComponent: 0)
self.sequencePicker.text = self.sequenceData[selectRow]
self.sequencePicker.resignFirstResponder()
self.areaPicker.text = self.areaData[selectRow]
self.areaPicker.resignFirstResponder()
}).disposed(by: disposeBag)
cell.moreBtn.rx.tap.subscribe(onNext: { _ in
let actionSheet = UIAlertController(title: "siren?", message: "", preferredStyle: .actionSheet)
let action = UIAlertAction(title: "ok", style: .default, handler: nil)
actionSheet.addAction(action)
self.present(actionSheet, animated: true, completion: nil)
}).disposed(by: self.disposeBag)
tableView.delegate = self
tableView.dataSource = nil
tableView.register(MainCell.self, forCellReuseIdentifier: "mainCell")
tableView.rowHeight = 150
}
func pickerBind() {
pickerView.delegate = self
pickerView.dataSource = nil
sequencePicker.inputView = pickerView
areaPicker.inputView = pickerView
_ = Observable.just(sequenceData).bind(to: pickerView.rx.itemTitles) { _, item in return "\(item)" }
}
问题是什么?
解决方案
推荐阅读
- sql - BigQuery LEFT JOIN 是加倍值
- python - 尝试使用 BeautifulSoup4 抓取网页,然后它在中途停止
- maven - 如何重定向单元测试输出Maven
- elasticsearch - 无法找出 Elasticsearch Python API 中的序列化错误
- node.js - UnhandledPromiseRejectionWarning 的 NodeJS Stacktrace:错误:ETIMEDOUT
- javascript - 为什么广告拦截器会阻止 Blob?
- angularjs - Angular File Saver 的 E2E 测试
- java - 我怎样才能解决错误'包R不存在'和'任务执行失败':app.compileDebugJavaWithJavac''错误在android studio中?
- sql - 在 redshift SQL 中生成分钟序列
- laravel - 服务器使用 laravel 队列内存不足