android - AnimatorSet - 出现错误:一次只能在 ModelRenderable 上播放一个 ModelAnimator
问题描述
我试图一个接一个地播放多个动画,但我似乎无法让它工作。它给了我错误:
Only one ModelAnimator may play on a ModelRenderable at a time
我已按照此 Stackoverflow 答案中的说明进行操作:
https://stackoverflow.com/a/55684795/11110509
private void animateModel(ModelRenderable modelRenderable) {
AnimationData danceData = modelRenderable.getAnimationData("Armature|Pecking.002");
ModelAnimator modelAnimator = new ModelAnimator(danceData, modelRenderable);
AnimationData danceData2 = modelRenderable.getAnimationData("Armature|Walking");
ModelAnimator modelAnimator2 = new ModelAnimator(danceData2, modelRenderable);
AnimatorSet animatorSet = new AnimatorSet();
animatorSet.play(modelAnimator).before(modelAnimator2);
animatorSet.start();
}
我做错了什么?
解决方案
据我所知,从 1.16 开始,不再支持 ModelAnimator 和 ModelRenderable.getAnimationData。
如果必须使用低于 1.16 的版本,
List<Animator> animatorList = new ArrayList();
animatorList.add(modelAnimator);
animatorList.add(modelAnimator2);
animatorSet.playSequentially(animatorList);
animatorSet.start();
你可以像上面那样做。因为我使用的是sceneform 1.16,所以我没有测试过代码。
推荐阅读
- jquery - jQuery追加到一个元素但在父元素的文本之后
- python - 以字符串形式获取 pandas 列名
- node.js - 未找到发送路线,
- sitefinity - sitefinity 参数 ActionResult 方法
- c# - unity c# for ... while ..代码崩溃,计算用户按键和用户按键的时间
- mysql - 当我运行以下命令时,GROUP BY 不工作:SELECT jobtitle,salary,COUNT(*) FROM employees GROUP BY 薪水;
- c# - Universal Analytics C# SDK 是否与 GA4 兼容?
- graphviz - 三列graphviz
- python - 如何在 discord.py 中使用 datetime 获取当前时间(不是 24 小时)?
- javascript - 多事件处理