Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/powershell/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
用于动画图像的QQuickImageProvider_Image_Qt5_Gif_Qtquick2_Animated Gif - Fatal编程技术网

用于动画图像的QQuickImageProvider

用于动画图像的QQuickImageProvider,image,qt5,gif,qtquick2,animated-gif,Image,Qt5,Gif,Qtquick2,Animated Gif,有人知道有没有办法不使用url而向AnimatedImage提供动画图像?问题是,我通过HTTPS获得了一个base64编码的GIF,我想在AnimatedImage的帮助下显示它。我曾想过使用QQuickImageProvider,但不幸的是QQuickImageProvider不能与AnimatedImage一起使用,而只能与Image一起使用。(另见) 有人能想出另一种方法来实现这一点吗?我能想到的唯一一件事,就是将文件写入磁盘,并使用url参数(这真的很低效) 也许在下面的一层,在执行b

有人知道有没有办法不使用
url
而向
AnimatedImage
提供动画图像?问题是,我通过HTTPS获得了一个base64编码的GIF,我想在
AnimatedImage
的帮助下显示它。我曾想过使用
QQuickImageProvider
,但不幸的是
QQuickImageProvider
不能与
AnimatedImage
一起使用,而只能与
Image
一起使用。(另见)


有人能想出另一种方法来实现这一点吗?我能想到的唯一一件事,就是将文件写入磁盘,并使用
url
参数(这真的很低效)

也许在下面的一层,在执行base64->
图像/gif
转换的
qqqmlengine
中提供您的自定义
QNetworkAccessManager
?首先,很抱歉响应太晚!我不能完全理解你的想法。我已经有了一个自定义的
QNetworkAccessManager
,可以从服务器获取图片。但不幸的是,我无法向
AnimatedImage
提供字节字符串。我还考虑让
source
参数指向一个Web URL,让
AnimatedImage
处理抓取和显示。但我认为,在类似新闻提要的应用程序中使用
AnimatedImage
时,这种方法无法扩展。为什么您认为您的网络访问管理器会比Qt Quick使用的默认管理器做得更好?Qt Quick中的url处理是从一个单独的线程异步完成的,当数据准备就绪时,
AnimatedImage
接收电影并开始显示它。你真的试过了吗?你想解决的真正问题是什么?你是对的,我可以在
AnimatedImage
中设置一个url,让
AnimatedImage
异步处理加载。但是,由于
AnimatedImage
将用于
ListView
中的代理中,因此我认为在加载GIF数据之前,将内存中的数据用作源更为平滑。(e.q我的应用程序发送请求以获取20个base64编码的GIF。收到数据后,我想用base64编码的GIF填充
ListView
s模型。并且
AnimatedImage
应将该数据用作