• <bdo id='1XV6H'></bdo><ul id='1XV6H'></ul>
  • <tfoot id='1XV6H'></tfoot>

    1. <i id='1XV6H'><tr id='1XV6H'><dt id='1XV6H'><q id='1XV6H'><span id='1XV6H'><b id='1XV6H'><form id='1XV6H'><ins id='1XV6H'></ins><ul id='1XV6H'></ul><sub id='1XV6H'></sub></form><legend id='1XV6H'></legend><bdo id='1XV6H'><pre id='1XV6H'><center id='1XV6H'></center></pre></bdo></b><th id='1XV6H'></th></span></q></dt></tr></i><div id='1XV6H'><tfoot id='1XV6H'></tfoot><dl id='1XV6H'><fieldset id='1XV6H'></fieldset></dl></div>

    2. <small id='1XV6H'></small><noframes id='1XV6H'>

        <legend id='1XV6H'><style id='1XV6H'><dir id='1XV6H'><q id='1XV6H'></q></dir></style></legend>

        使用 UITableView 和 NSOrderedSet 对核心数据进行排序

        时间:2023-06-01

          <tbody id='MeBZG'></tbody>
        <tfoot id='MeBZG'></tfoot>
          • <i id='MeBZG'><tr id='MeBZG'><dt id='MeBZG'><q id='MeBZG'><span id='MeBZG'><b id='MeBZG'><form id='MeBZG'><ins id='MeBZG'></ins><ul id='MeBZG'></ul><sub id='MeBZG'></sub></form><legend id='MeBZG'></legend><bdo id='MeBZG'><pre id='MeBZG'><center id='MeBZG'></center></pre></bdo></b><th id='MeBZG'></th></span></q></dt></tr></i><div id='MeBZG'><tfoot id='MeBZG'></tfoot><dl id='MeBZG'><fieldset id='MeBZG'></fieldset></dl></div>
            • <bdo id='MeBZG'></bdo><ul id='MeBZG'></ul>

            • <legend id='MeBZG'><style id='MeBZG'><dir id='MeBZG'><q id='MeBZG'></q></dir></style></legend>

                  <small id='MeBZG'></small><noframes id='MeBZG'>

                • 本文介绍了使用 UITableView 和 NSOrderedSet 对核心数据进行排序的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

                  问题描述

                  限时送ChatGPT账号..

                  在使用 Core Data 作为后备存储的 UITableViewController 中实现用户定义的排序需要执行哪些步骤?

                  What are the steps that I need to perform to implement user-defined ordering in a UITableViewController with Core Data as the backing store?

                  我还需要响应 -tableView:moveRowAtIndexPath:fromIndexPath:toIndexPath: 还是模型重新排序由表视图自动处理?我可以只选中 Core Data 模型文件中的Ordered"复选框并期望它将更改从 table view 传输到 store,还是我必须做更多?我是否必须更改 fetchedResultsController 获取其对象的方式(例如添加排序描述符)?

                  Do I still need to respond to -tableView:moveRowAtIndexPath:fromIndexPath:toIndexPath: or is the model re-ordering handled automatically by the table view? Can I just check the "Ordered" checkbox in the Core Data model file and expect it to transmit the changes from the table view to the store, or do I have to do more? Do I have to change the way my fetchedResultsController gets it's objects (e.g. add a sort descriptor)?

                  推荐答案

                  你不需要放弃 NSFetchedResultsController 或 NSOrderedSet.如果您坚持使用 NSOrderedSet,那么简单的方法就是向您的对象 NSManagedObject 子类添加一个方法.因此,例如,如果您有一个包含有序章节集的对象 Book,您可以向章节对象添加一个方法:

                  You don't need to abandon NSFetchedResultsController or NSOrderedSet. If you stick with NSOrderedSet, the easy way is to just add a method to your objects NSManagedObject subclass. So for instance, if you have an object Book with an ordered set of Chapters, you can add a method to the Chapters object:

                  - (NSUInteger)indexInBookChapters
                  {
                      NSUInteger index = [self.book.chapters indexOfObject:self];
                      return index;
                  }
                  

                  提示:将此添加到一个类别中,这样它就不会被 CoreData 自动生成的代码覆盖.

                  Tip: Add this to a category so it doesn't get overwritten by CoreData auto generated code.

                  然后你可以在你的 NSFetchedResultsController 的排序描述符中使用这个方法:

                  Then you can use this method in your sort descriptor for your NSFetchedResultsController:

                  fetchRequest.sortDescriptors = @[[NSSortDescriptor sortDescriptorWithKey:@"indexInBookChapters" ascending:YES]];
                  

                  这篇关于使用 UITableView 和 NSOrderedSet 对核心数据进行排序的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持html5模板网!

                  上一篇:如何在情节提要中创建 UIViewController 布局,然后 下一篇:在 ios 5 中的 MP 音乐播放器控制器中出现错误的播

                  相关文章

                  最新文章

                  1. <small id='ROrOp'></small><noframes id='ROrOp'>

                    <tfoot id='ROrOp'></tfoot>

                    <i id='ROrOp'><tr id='ROrOp'><dt id='ROrOp'><q id='ROrOp'><span id='ROrOp'><b id='ROrOp'><form id='ROrOp'><ins id='ROrOp'></ins><ul id='ROrOp'></ul><sub id='ROrOp'></sub></form><legend id='ROrOp'></legend><bdo id='ROrOp'><pre id='ROrOp'><center id='ROrOp'></center></pre></bdo></b><th id='ROrOp'></th></span></q></dt></tr></i><div id='ROrOp'><tfoot id='ROrOp'></tfoot><dl id='ROrOp'><fieldset id='ROrOp'></fieldset></dl></div>
                      <bdo id='ROrOp'></bdo><ul id='ROrOp'></ul>

                      <legend id='ROrOp'><style id='ROrOp'><dir id='ROrOp'><q id='ROrOp'></q></dir></style></legend>