我想要缩放图像,但是没有触摸它,经过一段时间的延迟,比如30秒,我尝试的是实现Gesturelistner和缩放 Camera.zoom * 0.5代表x,y。
可以使用补间来完成缩放吗?一个例子是什么?
答案 0 :(得分:1)
如果您希望在不触摸图像的情况下进行缩放,则手势监听器与其无关。
制作计时器和旗帜。
float timetozoom = 0;
boolean zoomed = false;
然后在每次渲染时为其添加delta以检查30秒后是否已经过去。发生这种情况时,请将其缩放并检查标记。
@Override
public void render(float delta) {
if (!zoomed) {
timetozoom += delta;
if (timetozoom>=30) {
camera.zoom = camera.zoom*0.5F;
zoomed = true;
}
}
}
答案 1 :(得分:0)
创建画布。在画布内绘制图像。使用surfaceView来保持画布。然后使用计时器进行缩放或平移或您需要执行的任何操作。您会发现最好使用矩阵操作来进行旋转,平移,缩放等。示例位于SDK文件夹中。
如果您没有触摸屏幕,我想知道您将如何触发或触发GestureListeners。你最好使用canvas并在计时器上触发onDraw()。
答案 2 :(得分:0)
您可以使用补间引擎。它很简单。
在创建中,您只需使用补间缩小图像。设置一些延迟(30秒)后,再次调用补间,缩放到原始大小。
或者:
如果您不想使用补间引擎,那么只需缩小图像并使用计时器计算时间。一旦计时器达到30秒,你就可以放大你的图像。