我遇到了列表/详细信息模式的问题。我有一个Article类,继承自QObject
,定义了一些属性(title
,updated
和content
是现在很重要的属性。要填充我的(QML)ListView
,我有一个C ++ GroupDataModel
,填充了一些Article*
。这是我的列表onTriggered
:
onTriggered: {
if (indexPath.length > 1) {
currentArticle = dataModel.data(indexPath);
var page = articlePageDefinition.createObject();
nav.push(page)
}
}
您可以猜到,articlePageDefinition
使用较高的currentArticle
属性定义了一个页面。
现在,当我显示articlePage一次时,它工作正常。我可以回去,点击相同的列表项,显示相同的Article
详细信息,效果很好。但当我选择第二篇文章时,该应用程序会冻结。我可以回到我的导航窗格中,但我不能再单击列表项了。我尝试添加一些日志,onTriggered
卡在currentArticle = dataModel.data(indexPath);
上。此时,我可以记录dataModel.data(indexPath)
的每个属性,没有任何问题。我试图不创建/推送页面,只是影响currentArticle
并显示它的一些属性,它也正常工作。我真的不明白我在这里做错了什么,感谢任何帮助。
如果您需要查看更多代码,一切都在这里:https://github.com/Kernald/tt-rss-bb10/tree/e29e3b616aa179dd42f66804ecc20a6a45b6bb22
答案 0 :(得分:1)
这可能会导致您遇到的问题:
答案 1 :(得分:0)
我的应用程序有类似的行为,但如果原因可以相同,我没有检查你的github代码。我想你可以比我更快地验证。
删除和添加具有相同索引的列表项时,代码会被卡住。我删除了一个关于用户操作的条目,并在该位置添加了一个新条目,并且卡住了。这是BB10的一个已知问题,我在这里找到:https://developer.blackberry.com/cascades/download/releasenotes/#known