问题描述
我需要在NSDictionary
中显示NSOutlineView
的内容。
我通过使用保存数据并被NSOutlineView
用作数据源的结构来完成此操作。
struct DataItem {
var caption : String
var text : String
}
dataInOutlineView: [DataItem]
我遍历NSDictionary
中的所有项目并将其添加到数据数组中
data.append(DataItem(caption: "KeyFromDict",text: "TextFromDict"))
然后我重新加载我的NSOutlineView
outlineView.reloadData()
可以找到这个概念,但是我的问题是NSDictionary
中的数据定期更改,我想在NSOutlineView
中显示更新的值。
我的第一次尝试是从阵列中删除所有项目
data.removeAll
然后使用上面的方法再次添加数据,然后再次重新加载NSOutlineView
,但这将导致NSOutlineView
的完全刷新,这意味着所有展开的项目都将再次折叠,而{{1 }}滚动到顶部。
有什么更好的主意来实现这一目标? (如果没有,可以使用上述方法更新数据,但保留所有展开/折叠和滚动位置状态吗?)
谢谢!
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)