在reloadData之后保存UITableView中的选定行 [英] save selected row in UITableView after reloadData
问题描述
我在iphone中编写自定义jabber客户端。
I write custom jabber client in iphone.
我使用 xmppframework 作为引擎。
我有UITableViewController和NSMutableArray用于重复联系人列表。
And I have UITableViewController with NSMutableArray for repesent contact list.
当我收到(或有人更改内容)名单(又名联系人列表)时,我想更改UITableView项目(添加/删除/修改)。因此,如果用户在列表更新时使用listView
When i receive(or somebody change it contents) roster (aka contact list) i wanna change UITableView items (add/remove/modify). So if User work with listView at time when list updates by
[items addObject:newItem];
[self.tableView reloadData];
用户当前选择项目丢失。
user lost current selection item.
所以,我的问题是如何保存(如果可能,我的意思是如果给定的选项没有删除)reloadData之后的当前选择项目?
So, my question is howto save (if possible, i mean if given selected item not removed) current select item after reloadData?
Thx。
推荐答案
简单的方法是这样的:
NSIndexPath *ipath = [self.tableView indexPathForSelectedRow];
[self.tableView reloadData];
[self.tableView selectRowAtIndexPath:ipath animated:NO scrollPosition:UITableViewScrollPositionNone];
这篇关于在reloadData之后保存UITableView中的选定行的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!