【发布时间】:2020-08-14 13:13:03
【问题描述】:
我正在尝试将数据从 SecondViewController 推回 FirstViewController。 我正在尝试使用 RxSwift 的 PublishSubject 类型来做到这一点。 当我移动到 FirstViewController 时,我只获得有关我在控制台中推送的内容的信息。 我只想在 testArray 对象中获取这些数据,这些数据将显示在 UITableView 中。 在 UITableView 中显示数据没有错误,我检查了。 有任何想法吗? ;)
FirstViewController.swift
let disposeBag = DisposeBag()
@objc func addCryptoButtonPressed() {
DispatchQueue.main.async {
let viewController = SecondViewController()
viewController.subject
.subscribe(onNext: { [weak self] pushedData in
print(pushedData) // <----- it is working
self?.testArray.append(pushedData) // <----- it is not
}).disposed(by: self.disposeBag)
DispatchQueue.main.async {
self.mainTableView.reloadData()
}
self.navigationController?.pushViewController(viewController, animated: true)
}
}
SecondViewController.swift
let subject = PublishSubject<String>()
func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
DispatchQueue.main.async {
let name = self.names[indexPath.row]
self.subject.onNext(name)
let viewController = FirstViewController()
self.navigationController?.pushViewController(viewController, animated: true)
}
}
【问题讨论】:
标签: ios uitableview uiviewcontroller rx-swift