如何设置隐藏视图的动画?

时间:2011-12-14 07:21:55

标签: android animation

我想创建一个隐藏其他视图并具有良好视觉效果的视图。首先,我查看Android开发人员文档并找到动画框架并编写如下代码:

    Animation animation = new TranslateAnimation(Animation.ABSOLUTE, 0.0f, 
        Animation.ABSOLUTE, 0.0f, Animation.ABSOLUTE, 0.0f, Animation.ABSOLUTE, -80.0f);
    animation.setDuration(200);
    animation.setInterpolator(new AccelerateInterpolator());

    searchButton.setOnClickListener(new OnClickListener() {

            @Override
            public void onClick(View v) {
                searchContainer.startAnimation(animation);
                findViewById(R.id.explore_place_search).setVisibility(View.GONE);
            }
        });

所以当我点击按钮时我会动作但是我想在动画完成时冻结最后位置的视图。当用户触摸此元素(MotionEvent.ACTION_DOWN)时,更好的方法移动视图。我可以问你如何做到这一点或在哪里可以阅读相同的案例?所有帮助将不胜感激。

1 个答案:

答案 0 :(得分:3)

那里有很多想法......动画片在android中相当简单,看看api demoes:http://developer.android.com/resources/samples/ApiDemos/index.html

以下是两个图像视图相互淡入淡出的示例:

                Animation fadeIn = new AlphaAnimation(0.00f, 1.00f);
                fadeIn.setDuration(1000);
                fadeIn.setAnimationListener(new AnimationListener() {
                    public void onAnimationStart(Animation animation) {}
                    public void onAnimationRepeat(Animation animation) {}
                    public void onAnimationEnd(Animation animation) {}
                });

                Animation fadeOut = new AlphaAnimation(1.00f, 0.00f);
                fadeOut.setDuration(1000);
                fadeOut.setAnimationListener(new AnimationListener() {
                    public void onAnimationStart(Animation animation) {}
                    public void onAnimationRepeat(Animation animation) {}
                    public void onAnimationEnd(Animation animation) {
                        placeholderImageView.setVisibility(View.GONE);
                    }
                });
                imageView.setImageBitmap(bitmap);

                placeholderImageView.startAnimation(fadeOut);
                imageView.startAnimation(fadeIn);

这是在代码中完成的,但动画也可以用xml完成​​。