在屏幕上平滑移动按钮 - Android

时间:2017-05-21 19:46:02

标签: java android

我已按照此回答How to make a Button randomly Move,它可以按我的意愿工作,但按钮会出现并从屏幕上消失。

我想这样做:h ttp://jsfiddle.net/Xw29r/15/

我在android中找不到与此相关的任何内容。

2 个答案:

答案 0 :(得分:1)

使用本教程

Apply animation on Button

答案 1 :(得分:1)

使用XMLset创建translate动画,并将此XML文件放入/res/anim文件夹。

以下是

的示例
//sequestial_move.xml

<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android"
    android:fillAfter="true"
    android:interpolator="@android:anim/linear_interpolator" >

    <!-- Use startOffset to give delay between animations -->
    <!-- Move -->
    <translate
        android:duration="800"
        android:fillAfter="true"
        android:fromXDelta="0%p"
        android:startOffset="300"
        android:toXDelta="75%p" />
    <translate
        android:duration="800"
        android:fillAfter="true"
        android:fromYDelta="0%p"
        android:startOffset="1100"
        android:toYDelta="70%p" />
    <translate
        android:duration="800"
        android:fillAfter="true"
        android:fromXDelta="0%p"
        android:startOffset="1900"
        android:toXDelta="-75%p" />
    <translate
        android:duration="800"
        android:fillAfter="true"
        android:fromYDelta="0%p"
        android:startOffset="2700"
        android:toYDelta="-70%p" />

</set>

使用:

XML加载动画,并使用.startAnimation(..)方法

使用动画
    ............
    ...................

    TextView txtMessage = (TextView) findViewById(R.id.txtMessage);
    Button btnStart = (Button) findViewById(R.id.btnStart);

    // load the animation
    Animation animSequestialMove = AnimationUtils.loadAnimation(getApplicationContext(),
            R.anim.sequestial_move);

    // button click event
    btnStart.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View v) {
            txtMessage.setVisibility(View.VISIBLE);

            // start the animation
            txtMessage.startAnimation(animSequestialMove);
        }
    });

    .............
    .....................

关于不同类型的Animations,这是一个很好的tutorial

希望这会有所帮助〜