0

我今天开始在 android 上学习动画,动画结束后我无法定位视图。

当应用程序启动时,它会在屏幕中央显示一个搜索 EditText,当您搜索某些内容时,这个 EditText 应该使用下面的代码滑动到顶部

public void slideToTop(View view){
    view.animate()
            .translationY((-parent.getHeight()/2) + view.getHeight())
            .setInterpolator(new AccelerateInterpolator())
            .setDuration(500)
            .setListener(new Animator.AnimatorListener() {
                             @Override
                             public void onAnimationStart(Animator animator) {

                             }

                             @Override
                             public void onAnimationEnd(Animator animator) {
                                layoutContent.setVisibility(View.VISIBLE);
                             }

                             @Override
                             public void onAnimationCancel(Animator animator) {

                             }

                             @Override
                             public void onAnimationRepeat(Animator animator) {

                             }
                         });
                    fadeOutAndHideImage(logo);
}

如何在现在位于布局顶部的 EditText 下方显示结果?
我尝试使用RelativeLayout中的layout_below属性,设置动画结束时的可见性,但似乎位置是在动画之前计算的

4

1 回答 1

1

您必须将视图的位置设置为programatically在动画结束时(-parent.getHeight()/2) + view.getHeight()使用Layout Params,这可能会帮助您解决问题。

于 2018-10-05T03:04:59.297 回答