在android中滑动一个按钮?

时间:2015-04-27 08:31:12

标签: android animation

我的应用程序中有一个片段,上面有一个自定义按钮,它的宽度为50dp,左边距设置为-25dp,因此有一半是屏幕外的。我想为它设置动画,以便在某个特定事件中它向右移动50dp并保持在那里。

我试过这个:

TranslateAnimation slide_anim=new TranslateAnimation(0,50,0,0);
slide_anim.setDuration(250);
mMovingButton.startAnimation(slide_anim);

但它将它移动50像素并且它不会停留在那里,我该如何解决?

1 个答案:

答案 0 :(得分:1)

使用以下代码 -

btnToSlide.animate().translationX(dpToPx(50,mContext)).setDuration(200)
        .setStartDelay(0).alpha(200);

要在dp中传递值,请使用dpToPx方法 -

    public static int dpToPx(int dp, Context context) {


DisplayMetrics displayMetrics = context.getResources()
                .getDisplayMetrics();
        int px = Math.round(dp
                * (displayMetrics.xdpi / DisplayMetrics.DENSITY_DEFAULT));
        return px;
    }