问题标签 [rxdatasources]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1235 浏览

ios - 如何允许编辑由 RxDataSources 支持的表视图?

我正在构建一个由 RxDataSources 支持的表视图。我想为此表视图启用编辑,以便用户可以删除项目。

我目前有这个代码:

为了使它可编辑,我在标记为 X 的地方添加了这个:

并且还覆盖了这个方法:

但是,当我按下编辑按钮时,表格视图单元格没有任何变化。我在左侧没有看到红色的“-”按钮。我也无法向左滑动单元格以显示删除按钮。

我还需要做什么才能启用编辑?

0 投票
1 回答
883 浏览

swift - 如何正确地将部分中的项目与 RxDataSource swift 结合起来?

当项目在一分钟内发送时,我需要在部分中合并聊天消息。

视图模型

......

......

视图控制器

……

……

留言项目

……

……

我的表格视图被旋转,因为我获取消息被还原。我知道这是我在扫描时的错误,因为当我评论这段代码时,我的单元格以正确的方式排序,但没有按部分组合。

0 投票
1 回答
2045 浏览

ios - 如何使用 RxDatasource 在 UICollectionView 中创建具有多个标题的多个部分

在任何人复制之前,我在 SO 和其他网站上都有所有 RxDatasource 标签的场景。但是没有人为我工作。

所以我的问题与我为我的案例所遵循的这个问题完全相关。但我也不知道这里发生了什么。它已经挣扎了两个星期。我也检查了 gitHub 代码示例,但无法理解。我已经使用 MVVM 架构模式创建了一个应用程序,一切RxSwift正常,但现在我需要在我的视图中创建两个部分,用于我阅读并尝试应用它,但我根本没有得到它实际上在做什么. 我尝试创建其他学习项目,但那些也没有奏效。我仍然尝试编写此代码,但它给了我错误。RealmUICollectioViewRxdataSource

我所做的是来自上面提供的链接在下面的代码中。我也不知道如何在拆分一个数组后为我的数据源提供数据或列表。下面是我的整个代码。

我不知道这个块在做什么。

那么我的 CollectionView 类就像

和 ViewModels 看起来像这样。从我居住的地方。

我正在从数据库中填充数据,但我需要制作两个列表,我也没有得到我必须发送两个数据列表来填充的地方。另外,当我尝试在我的代码中使用它来查看事情是如何工作的但它给出了我的以下错误。 实例方法 'items(dataSource:)' 要求类型 '[SectionModel]' 和 '[StudentModel]' 是等价的。任何建议或帮助将不胜感激。提前致谢

0 投票
1 回答
509 浏览

ios - RxDataSources itemDeselected 没有被调用

我正在使用 RxDataSources 并尝试为单元格选择创建一个“切换”功能 - 即允许通过点击来选择和取消选择单元格(在单选 tableView 中)。我 tableView.rx.itemSelected用来获取选择,并self?.tableView.deselectRow(at: indexPath, animated: false)取消选择单元格,如果它当前处于选定状态。这似乎基本上有效,但我想回应取消选择。我假设这self?.tableView.deselectRow(at: indexPath, animated: false)会导致tableView.rx.itemDeselected被调用,但从未发生过。我显然错过了一些东西。

任何想法表示赞赏。

0 投票
1 回答
758 浏览

swift - Swift 5 RxDataSource 可扩展单元格

我想将可扩展的 tableView 从默认值传递给 Rx,但我发现我无法正确使用numberOfRownInSection的问题。

现在的逻辑是......当你的结构有标志isExpandable = false时,行数为0

我所拥有的是带有静态数据的tableView(结构将在下面提供)。HeaderView 作为标题,单元格作为可扩展内容。

切换功能:

默认 tableView 委托:

结构

要将其传递给 Rx,我使用了以下代码,但在插入/删除行时出现错误,因为我不想清除我的 dataSource 并且无法将numberOfRownInSection设置为不显示带有可扩展标志的单元格。

0 投票
1 回答
866 浏览

ios - 使用 RxSwift 时未设置 Tableview 数据

我正在以编程方式创建我的 tableview

我在 viewdidload 期间调用绑定函数

我的 tableview 的数据源来自我的 viewmodel 中的一个 observable

我遇到的问题是绑定函数没有被调用tableview。observable 中显然有一些项目应该被绑定,但我所做的每一个可能的测试都从未执行过 tableview 绑定的主体。

为了证实我的理论,我在 setupBindings() 中测试了这段代码并执行了它的主体,打印出 "2019-12-01 16:36:18 | INFO | ["Recommended", "Dashboard", "Settings"] "

我查看了正确设置 tableview 数据源的文档,并进行了相当多的研究。我很难过,需要帮助。

0 投票
1 回答
370 浏览

swift - MVVM-C 中的表视图数据源

使用 MVVM-C 架构时,我应该将 UITableView 数据源(我正在使用 RxDataSources)放在哪里?

0 投票
2 回答
2516 浏览

ios - RxDataSources 单元格重新加载动画无法正常工作

RxDataSourcesRxSwift. 我有一个简单的表格设置,如下所示:

型号:

当点击按钮时,BehaviorRelay更新并且表格似乎刷新但是“动画”总是相同的。在提供的代码中,我实际上已将所有动画类型设置为.none但它仍在执行动画。如果我尝试将动画类型更改为另一种类型,例如.bottom再次动画是相同的。我在这里做错了什么?

在此处输入图像描述

这是重新加载动画还是插入动画?我不知道数据更新时表是否会重新加载或插入,我在文档中找不到任何信息。对此的任何指示将不胜感激!

0 投票
1 回答
1416 浏览

ios - RxDataSources 集合视图单元格始终使用淡入淡出插入单元格动画,不能更改为不同的动画

我在使用RxSwifta 的单元格动画时遇到问题UICollectionView,我的简单设置如下:

像这样使用单元格和数据模型:

我正在使用按下按钮BehaviourRelay时更新的:update

在此处输入图像描述

问题是集合视图确实有动画,但它似乎总是使用淡入淡出风格的动画。选择一个不同的选项,.bottom例如上面的例子,仍然会产生相同的淡入淡出动画。我以前在表格视图上使用过类似的逻辑并且没有问题,我似乎只在集合视图中遇到问题。如何让不同风格的动画工作?

0 投票
1 回答
167 浏览

swift - 在 RxDataSources 中对 SectionModelType 的“Self”要求进行初始化

使用TableViewSectionedDataSource将分段表与RxDataSources绑定,需要符合SectionModelType的部分。

SectionModelType协议具有以下初始化程序作为其要求之一:

此外,相同的协议强制执行var items: [Item] { get }. 我们现在可以init使用 fromoriginal.itemsitems作为 init 参数传递来初始化 items 数组支持变量(在上面提到的)。这非常令人困惑。SectionModelType 代码没有注释。

README 的How部分解释了为这种情况创建部分,讨论了创建类型别名(用于关联值)和 items 数组,但没有关于以下实现initwith的说法original: Self

虽然这可以在结构中工作,但在类中做同样的喊叫:

无法赋值:'self' 是不可变的

任何人都可以在这里解释这里发生了什么以及为什么我们需要初始化Self

最后,是否有另一种(更清洁的)反应方式(仅在 RXSwift / RxCocoa 中)将分段表视图绑定到可观察数据源。例如 * 我的单元格和部分有自己的数据模型,它们需要是可变的(因此是类) * 有多个屏幕对不同的实体有这个要求,所以我会对用协议来实现这一点感兴趣,并拍下相应的具有协议 ans 的数据模型具有 RXBinding 的通用实现

任何可以更清楚地了解现有实现或实现上述要点的指针都会非常有帮助。PS:我已经在使用 Rx 的庞大代码库中工作,所以不使用 Rx,或者迁移到 SwiftUI 等不是我想要的。