设置android视图位置没有效果

问题描述

我在 RelativeLayout 中有一个简单的视图,我向上和向下设置动画以使其在屏幕上滑动。这每次都有效,除了第一次,动画什么都不做。

这导致我尝试在活动的 onCreate() 方法中手动设置 Y 位置。奇怪的是,这也没有效果

在活动完全显示之前,是否有某种原因无法设置视图的 Y 位置?如果没有,为什么我会看到这种奇怪的行为,有没有办法解决它?

解决方法

您第一次调用它是在视图布局之前。

您可以通过监听要布局的视图来解决此问题。

view.getViewTreeObserver().addOnGlobalLayoutListener(new ViewTreeObserver.OnGlobalLayoutListener() {
            @Override
            public void onGlobalLayout() {
                view.getViewTreeObserver().removeOnGlobalLayoutListener(this);
                
                // Perform whatever actions you want here
            }
        });