【发布时间】:2016-07-28 03:19:44
【问题描述】:
我正在开发Android App,我的要求是RelativeLayout 的子级,它是ScrollView 的子级,当RelativeLayout 的子级在滚动时到达顶部时我如何得到?
我的代码 OnScrollChnnged 是
final LinearLayout shareAndFuirteLayOut = (LinearLayout) findViewById(R.id.shareAndFuirteLayOut);
final ScrollView mainScrollView = (ScrollView) findViewById(R.id.mainScrollView);
final ViewTreeObserver.OnScrollChangedListener onScrollChangedListener = new ViewTreeObserver.OnScrollChangedListener() {
@Override
public void onScrollChanged() {
}
};
mainScrollView.setOnTouchListener(new View.OnTouchListener() {
private ViewTreeObserver observer;
@Override
public boolean onTouch(View v, MotionEvent event) {
// TODO Auto-generated method stub
if (observer == null) {
observer = mainScrollView.getViewTreeObserver();
observer.addOnScrollChangedListener(onScrollChangedListener);
} else if (!observer.isAlive()) {
observer.removeOnScrollChangedListener(onScrollChangedListener);
observer = mainScrollView.getViewTreeObserver();
observer.addOnScrollChangedListener(onScrollChangedListener);
}
return false;
}
});
【问题讨论】:
-
贴出你试过的代码
-
您应该能够使用 ScrollView.getScrollY() 和 RelativeLayout.GetY() 的组合来实现
标签: android android-layout android-scrollview vertical-scrolling