设置对象表IndexPath到对象属性?

时间:2017-02-28 17:37:48

标签: ios swift uitableview core-data

我想将我的对象在tableview中的索引路径保存为核心数据中的属性。

这样用户可以随意重新排列它们,我可以保存位置并按顺序在不同的视图中重新加载它们。

我不知道我应该在哪里进行此保存,因为您无法在表函数外部访问表索引路径?

目前我正在使用

>>> import arrow
>>> dateStrings = [ 'Jun 1  2005 1:33PM', 'Aug 28 1999 12:00AM' ]
>>> for dateString in dateStrings:
...     dateString
...     arrow.get(dateString.replace('  ',' '), 'MMM D YYYY H:mmA').datetime
...     arrow.get(dateString.replace('  ',' '), 'MMM D YYYY H:mmA').format('ddd, Do MMM YYYY HH:mm')
...     arrow.get(dateString.replace('  ',' '), 'MMM D YYYY H:mmA').humanize(locale='de')
...
'Jun 1  2005 1:33PM'
datetime.datetime(2005, 6, 1, 13, 33, tzinfo=tzutc())
'Wed, 1st Jun 2005 13:33'
'vor 11 Jahren'
'Aug 28 1999 12:00AM'
datetime.datetime(1999, 8, 28, 0, 0, tzinfo=tzutc())
'Sat, 28th Aug 1999 00:00'
'vor 17 Jahren'

其中for uniqueUserExercise in queryResults { uniqueUserExercise.arrayPosition = ?? }

和uniqueUserExercise是查询结果数组中的一个练习对象

在哪里?将是找出tableview中每个项目的索引路径的方法

我是如何实现这一目标的?例如,结果是,无论哪个对象坐在索引路径3上有2保存,5中有一个保存4(显然它们从0开始)

我只是不确定如何在外部函数中将这些数据访问到通常的行设置内容?

感谢此

中的任何支持

1 个答案:

答案 0 :(得分:0)

UITableViewDataSource有两种支持行重新排序的方法:tableView(:canMoveRowAt :)和tableView(:moveRowAt:to :)。如果您阅读UITableView开头的注释,您可以了解何时调用这些方法 - 在插入,删除或拖动等事件中。然后,您可以使用这些方法提供的信息来更新" myIndex"有关NSManagedObject的属性。