我现在正在处理 qml 中的动画,我发现了很多有助于制作动画的指南,但只有在一张长图片的帮助下,其中包括许多像这样的小图片:

这是我用来从这样的图片创建动画的代码:
import QtQuick 2.12
import QtQuick.Window 2.12
import QtQuick.Layouts 1.0
import QtQuick.Controls 2.0
Window {
visible: true
width: 640
height: 480
title: qsTr("Hello World")
AnimatedSprite {
id: animSprite
width: 100
height:100
y: 100
// Источник, спрайтовая картинка
source: "player_animation.png"
frameCount: 8 // Количество кадров
frameWidth: 46 // Ширина фрейма
frameHeight: 50 // Высота фрейма
frameSync: true // Синхронизация
frameRate: 10
}
NumberAnimation {
target: animSprite
property: "x"
from: -100
to: 800
duration: 8000
loops: Animation.Infinite
running: true
}
}
但是,许多您需要从中购买/下载精灵的网站只提供一组,例如,五张带有角色动画的简单图片,这些图片并未合并为一张。让我们只说几张描述一个动画的图片。告诉我,有没有一种正常的方法可以从五张图片制作动画(就像在其他一些语言中一样,它只是一个不占用主线程的循环,这些不同的图片依次代替精灵)? 请帮帮我
我认为在您的情况下最好的方法是将图像转换为 .gif 格式并将它们
AnimatedImage用于显示。