在这个例子中,我有一个包含这些特定信息的静态表.
let itens = Observable.just([ MenuItem(name: GlobalStrings.menuItemHome,nameClass: "GPMainVC"),MenuItem(name: GlobalStrings.menuItemProfile,MenuItem(name: GlobalStrings.menuItemLevels,nameClass: "GPLevelsVC"),])
当用户选择一个单元格时,我需要知道模型(MenuItem)和索引,但我无法做到这一点
tableVIEw.rx .itemSelected .map { [weak self] indexPath in return (indexPath,self?.modelVIEw.itens.elementAt(indexPath.row)) } .subscribe(onNext: { [weak self] indexPath,model in self?.tableVIEw.reloadData() //can´t get MenuItem because model its a observable //self?.dIDSelect((indexPath as NSIndexPath).row,name.nameClass) }) .adddisposableto(disposeBag)
提前致谢
解决方法 你必须做下一步:>使用变量.我认为在您的情况下这是一个更好的解决方案.
let itens = Variable([ MenuItem(name: GlobalStrings.menuItemHome,])
>如果要从单击的单元格中获取索引和模型,请使用以下代码.
tableVIEw.rx.itemSelected.map { index in return (index,self.items.value[index.row])}.subscribe(onNext: { [weak self] index,model in // model is MenuItem class}).adddisposableto(disposeBag)
我希望我的回答对你很有帮助.如果您想在任务中获得有关RxSwift机会的更多信息,请与我们联系.祝好运!
总结以上是内存溢出为你收集整理的ios – RxSwift从Observable序列中的一个项目获取值全部内容,希望文章能够帮你解决ios – RxSwift从Observable序列中的一个项目获取值所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)