我必须倾听特定视图的位置变化。视图可以在任何地方,例如,它可以是列表视图或回收器视图的一个项目,或者它可以是滚动视图或嵌套滚动视图等的子视图。但是每当视图在屏幕中的位置发生更改时(只要x,y 坐标正在更新),我需要得到通知。我试过了
view.setOnScrollChangeListener(new View.OnScrollChangeListener() {
@Override
public void onScrollChange(View view, int i, int i1, int i2, int i3) {
Log.d(TAG, "Position changed");
}
});
和
view.getViewTreeObserver().addOnGlobalLayoutListener(new ViewTreeObserver.OnGlobalLayoutListener() {
@Override
public void onGlobalLayout() {
Log.d(TAG, "Layout changed");
}
});
但似乎不起作用
我也试过GestureDetectorCompat
,但在投掷期间,x,y 位置不准确。
我的问题有什么解决方案吗?希望我的问题很清楚。提前致谢!!