7

将 qml 文件重新加载到 QQuickView 的正确方法是什么?我正在使用 Qt Quick 2.1 并尝试编写一个简单的程序来加载 qml 文件并显示它。目前我正在通过创建一个 QQuickView 来做到这一点,当我想重新加载 qml 文件时,我正在删除旧文件并创建一个新文件。这样做的正确方法是什么?用新的 qml 文件(或更改的 qml 文件)调用 QQuickView::setSource 对我不起作用。

4

2 回答 2

13

您可以使用以下内容(假设您在 的子类中QQuickView):

QUrl tmp = source();
setSource(QUrl());
engine()->clearComponentCache();
setSource(tmp);
于 2013-06-27T19:59:00.863 回答
1

你可以按照他的方式来做:

  1. 创建一个 main.qml(名称可以是任何东西)文件,在该文件中,您将实际加载和卸载其他 qml 文件。

  2. 然后使用qml 加载器元素加载/卸载(如果可能,请刷新)任何其他文件。

于 2013-06-27T09:12:29.527 回答