最近想开发一个ubuntu showdown的应用,但是想用c++来用一些插件,于是想自己写一些插件,然后创建一个带qml扩展库的项目,但是运行的时候就弹出一个对话框。
我没有上传图片的资格,如果你能自己上传,你就会明白我在说什么。我想知道我是否可以在 ubuntu touch 应用程序中使用 c++,如果可以,我想要一些示例。
附言:我对 qml 和 ubuntu sdk 还不熟悉
答案1
我刚刚学会了如何做到这一点,并写下了我学到的东西这里.我在这里重复一下基本思想。
无论您希望公开哪些 C++ 类,大部分都可以保持原样。任何您想要公开给 QML 的方法都需要Q_INVOKABLE
在头文件中加上前缀。为了表示插件,您需要一个继承自该类的类,QQmlExtensionPlugin
该类具有一个调用每个要公开给 QML 的类registerTypes
的方法。qmlRegisterType
您提到的对话是这个吗?
如果是这样,那么对于“命令”,请输入qmlscene
,对于“参数” -I <DIR> <QML>
,其中<DIR>
是包含插件目录的目录(可能是.
项目目录),并且<QML>
是您的主.qml
文件。再次查看我的邮政以获得更详细的解释和可下载的示例。