- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试更改 Sprite 的 y 位置,翻译有效,我的问题是它忽略了我的目标并每次都转到一个特定点,我不明白为什么
Sprite 访问器代码:
public class SpriteAccessor implements TweenAccessor<Sprite>{
public static final int ALPHA = 1;
public static final int POSITION_X = 2;
public static final int POSITION_Y = 3;
@Override
public int getValues(Sprite target, int tweenType, float[] returnValues) {
switch (tweenType) {
case ALPHA:
returnValues[0] = target.getColor().a;
return 1;
case POSITION_X:
returnValues[1] = target.getX();
return 2;
case POSITION_Y:
returnValues[2] = target.getY();
return 3;
default:
return 0;
}
}
@Override
public void setValues(Sprite target, int tweenType, float[] newValues) {
switch (tweenType) {
case ALPHA:
target.setColor(1, 1, 1, newValues[0]);
break;
case POSITION_X:
target.setX(newValues[1]);
break;
case POSITION_Y:
target.setY(newValues[2]);
break;
}
}
}
以及我进行翻译的函数:
private void setupTween() {
Tween.registerAccessor(Sprite.class, new SpriteAccessor());
manager = new TweenManager();
TweenCallback cb = new TweenCallback() {
@Override
public void onEvent(int type, BaseTween<?> source) {
}
};
Tween.to(menuLogoSprite, SpriteAccessor.POSITION_Y, 2f)
.target()//any value i put here is ignored
.ease(TweenEquations.easeInOutQuint)
.setCallback(cb).setCallbackTriggers(TweenCallback.COMPLETE)
.start(manager);
}
最佳答案
看来您误解了 TweenAccessor 的工作原理。在 getValue()
方法中,您应该将值放入 returnValues
数组中,从元素零开始,结果应该是放置的值的数量。
这允许您使用一种补间类型处理多个值。
要解决您眼前的问题,请尝试此...
switch (tweenType) {
case ALPHA:
returnValues[0] = target.getColor().a;
return 1;
case POSITION_X:
returnValues[0] = target.getX();
return 1;
case POSITION_Y:
returnValues[0] = target.getY();
return 1;
default:
return 0;
}
}
@Override
public void setValues(Sprite target, int tweenType, float[] newValues) {
switch (tweenType) {
case ALPHA:
target.setColor(1, 1, 1, newValues[0]);
break;
case POSITION_X:
target.setX(newValues[0]);
break;
case POSITION_Y:
target.setY(newValues[0]);
break;
}
}
警告 - 这是凭内存而写的,我实际上还没有尝试过你的代码。
关于java - Tween 引擎 - Tween.to 忽略目标值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34280965/
我想通过下面的代码获取event.target.value。 class Detail { changeOwner(val: string){ console.log
我有一个简单的 jQuery 表单,使用来自 malsup ( http://jquery.malsup.com/form/ ) 的 jQuery 表单插件和用于测试的 ajax(如下)。 在我的页面
是否可以在不停止运行的情况下更改正在运行的过渡的目标位置或属性,使其像平滑过渡一样? 让我解释一个例子,假设我的初始动画如下: -webkit-transition:-webkit-transform
我正在使用 jQuery 创建一个滑动图像库,当给定一个数值时,“left”css 属性工作正常,但当给定一个变量时,它不会执行任何操作。这是我的代码: $(document).mousemove(f
我是一名优秀的程序员,十分优秀!