我来到这里有一个小问题,我不能在我的代码中使用任何本地.gif。
我在Linux上使用QtCreator和Sailfish VM来创建一个Sailfish-os应用程序。
我第一次尝试了这个例子,但没有成功。
Rectangle {
width: animation.width
height: animation.height
AnimatedImage { id: animation; source: "../images/animatedimageitem.gif"}
}执行返回:
QML AnimatedImage:读取动画图像文件AnimatedImage错误
对于gif和其他gif的其他权限也存在相同的问题。
经过一些研究,我发现了这页面,其中有人表示要下载插件,但是Qt声明(我希望我可以放置一个链接,但我是新手,请参阅注释),gifs默认支持。
这个插件最终是无法获得的,我在我的目录中找到了这个Sailfish/bin/plugins/imageformats/libqgif.so。
那我该怎么做才能在这该死的东西上展示个礼物呢?
发布于 2014-11-13 15:19:22
嗯……我刚刚把它放在我的手机(Jolla)上,而gif运行良好。所以这个VM似乎不喜欢gifs ..。
不过,谢谢你的帮助,神经病。
发布于 2014-11-13 13:50:26
您所看到的错误可能与文件有关。支持Gif,AFAIK。
不要用这种方式编写路径,而是考虑使用资源文件来提高可移植性和平台无关性。
File -> New File or project -> Qt -> Qt Resource File)Add,然后是Add prefix,并设置前缀,如/ (或任何您喜欢的!)Add files并插入图像copy resource path to Clipboard。在剪贴板中复制的路径应该是以下形式:
://PATH_TO_IMAGE.gif现在,考虑到您的QML代码,我可以猜到image文件夹在源代码中的级别与QML文件夹相同。因此,如果您从该文件夹中添加了.gif文件,那么剪贴板中将有以下路径:
://images/name.gif这可以加上前缀,以获得最终路径。如果您的前缀设置为/,就像我们前面所做的那样,在AnimatedImage的source属性中设置的最后一个字符串将是:
"qrc:///images/name.gif"显然,不同的前缀或不同的路径会导致不同的最终路径。
https://stackoverflow.com/questions/26904333
复制相似问题