在 UITableView 中移动行
我有一个包含 3 个部分的 UITableView,在编辑模式下可以更改其部分内的行位置而不是另一个部分?实际上我可以将单元格移动到任何部分。
谢谢
I have a UITableView that contain 3 sections, It is possible in the edit mode to change the row position just inside his section and not to another section?Actually I can move the cell to any section.
Thanks
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(5)
许多正确答案,但没有人给出完整且精美的答复。
使用表视图委托方法 tableView:targetIndexPathForMoveFromRowAtIndexPath:toProposedIndexPath: ,如下所示。
不要忘记在您的 tableView:moveRowAtIndexPath:toIndexPath: 数据源方法中进行另一次检查,如下所示,您不希望在目标相似时运行应用程序逻辑到源头。
Many correct answers but no one presented a complete and well presented reply.
Use the table view delegate method tableView:targetIndexPathForMoveFromRowAtIndexPath:toProposedIndexPath: as shown below.
Do not forget to do another check in your tableView:moveRowAtIndexPath:toIndexPath: data source method as shown below, you do not want to run your application logic when the destination is similar to the source.
如果我正确理解你的问题,那么是的:使用
If I understand your question correctly, then yes: use
就像 Steven 和 Narayanan 所说,你必须实现
UITableView 委托的方法。
在此方法中,您检查 sourceIndexPath.section:
我没有编写代码,因此您将有机会练习而不是复制粘贴;)
(编辑:为选项添加列表样式)
like Steven and Narayanan said, you have to implement the method
of your UITableView delegate.
In this method, you check the sourceIndexPath.section:
I didn't write the code so you'll have the pleasure to practice instead of copy'n'paste ;)
(edit: adding list style for the options)
添加
此检查:
In
add this check:
试试这个
Try this