gpt4 book ai didi

objective-c - 设计和逻辑 - 保存重新排序的 UITable 行的最有效方法

转载 作者:行者123 更新时间:2023-12-03 17:54:00 26 4
gpt4 key购买 nike

enter image description here

蓝色表格称为Routine,另一个称为Exercise

Routine.exerciseExercise.routine 具有多对多关系。

我有一个 UITableView,用户可以重新排列项目的顺序,但我在思考设计实体的方法时遇到问题,以便我可以对它们重新排序并保存它们的重新排序位置。

我想要排序的是 X Routine 中的练习在 UITable 中的位置。

例如:已选择例程 A,它具有按以下顺序排列的以下项目。

E1
E3
E2

当我无法在练习实体中放置订单列时,我的问题就出现了,因为它是多对多关系。因此,该练习在不同的例程中会有不同的位置。

我还创建了一个不同的实体来保存位置数据,但这意味着我必须创建 X 列的数量,并记住列的数量必须大于典型的数量日常事件中可以进行的练习。这是迄今为止我最可行的选择,但我想知道是否有更好的解决方案,因为会有很多行未使用,并且在存储它时意味着循环遍历所有空行并将它们作废,以防万一。

任何人都可以想出更好的方法或者 Xcode 中是否有更好的方法来存储 UITable 中项目的位置?我可以在字段中存储数组吗?

我正在使用 CoreData。

编辑回应答案: enter image description here

最佳答案

多对多关系可以重写为两个一对多关系,中间有一个连接表。也就是说,创建一个ExerciseRoutine 表(或一些更好的名称)来表示练习和例程的匹配,并将有关特定关系的任何数据放入其中。

不太灵活的方法 - 因为您当前只想知道例程中练习的顺序 - 是将顺序存储为数组,连接到例程。

(但我推荐选项 #1 作为更好的通用技术。)

关于objective-c - 设计和逻辑 - 保存重新排序的 UITable 行的最有效方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16624428/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com