设置计时器以在Android Studio中移动按钮

时间:2016-08-14 09:30:46

标签: java android android-studio animation timer

我在屏幕上有一个图像按钮,我希望它在按下时在屏幕上移动一定距离。在swift中我常常设置一个移动它的计时器,这样我也可以设置这个按钮的速度。 Android Studio中有类似内容吗?

3 个答案:

答案 0 :(得分:1)

最简单的解决方案是使用TranslateAnimation:

        imageButton.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {

                TranslateAnimation translateAnimation = new TranslateAnimation(0, 100, 0, 0);
                translateAnimation.setDuration(1000);
                view.startAnimation(translateAnimation);


            }
        });

这将在1000ms = 1s

的时间间隔内将按钮向右移动100个像素

答案 1 :(得分:0)

如果您也想让ImageButton留在它已经移动的位置,例如在注释中添加translateAnimation.setFillAfter(true);,然后再开始动画。

完整代码:

        TranslateAnimation translateAnimation = new TranslateAnimation(0, 0, 0, -150);
        translateAnimation.setDuration(1000);
        translateAnimation.setFillAfter(true);
        YOURIMAGEBUTTON.startAnimation(translateAnimation);

这将在1000ms = 1s的时间间隔内将按钮上移150个像素

答案 2 :(得分:0)

尝试一下:

        iv.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                iv.animate().setDuration(100).translationX(100);
            }
        });