Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/227.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 我想检测滚动结束事件_Java_Android_Android Studio_Scroll_Scrollview - Fatal编程技术网

Java 我想检测滚动结束事件

Java 我想检测滚动结束事件,java,android,android-studio,scroll,scrollview,Java,Android,Android Studio,Scroll,Scrollview,我想检测scrollView的滚动结束事件。 首先,我实现了OnCrollChange方法,并尝试侦听一些值,如果它们可以帮助我了解滚动的结束。 谢谢你帮助我 scrollView.setOnScrollChangeListener(新视图.OnScrollChangeListener(){ @凌驾 公共void onScrollChange(视图视图、int i、int i1、int i2、int i3){ Toast.makeText(getApplicationContext(),“在滚

我想检测scrollView的滚动结束事件。 首先,我实现了OnCrollChange方法,并尝试侦听一些值,如果它们可以帮助我了解滚动的结束。 谢谢你帮助我

scrollView.setOnScrollChangeListener(新视图.OnScrollChangeListener(){
@凌驾
公共void onScrollChange(视图视图、int i、int i1、int i2、int i3){
Toast.makeText(getApplicationContext(),“在滚动中------->“+i+”“+i1+”“+i2+”“+i3,Toast.LENGTH_SHORT”).show();
阴影视图.setBackgroundResource(R.drawable.shadow);
如果((i3==0)){
Toast.makeText(getApplicationContext(),“equality------------------------------------>”,Toast.LENGTH\u SHORT.show();
阴影视图.挫折背景资源(R.drawable.trans);
}
否则{
//Toast.makeText(getApplicationContext(),“NO----------------------------------------->”,Toast.LENGTH\u SHORT.show();
}
}
});这将有所帮助

scrollView.getViewTreeObserver().addOnScrollChangedListener(new ViewTreeObserver.OnScrollChangedListener() {
    @Override
    public void onScrollChanged() {
        if (scrollView != null) {
            if (scrollView.getChildAt(0).getBottom() <= (scrollView.getHeight() + scrollView.getScrollY())) {
                //scroll view is at bottom
            } else {
                //scroll view is not at bottom
            }
        }
    }
});
scrollView.getViewTreeObserver().addOnScrollChangedListener(新的ViewTreeObserver.OnScrollChangedListener(){
@凌驾
public void onScrollChanged(){
if(滚动视图!=null){

if(scrollView.getChildAt(0.getBottom()修改
onScrollChanged
方法,如下所示

       @Override
        public void onScrollChanged(View view, int i, int i1, int i2, int i3){
            View view = (View) getChildAt(getChildCount()-1);
            int delta = (view.getBottom()-(getHeight()+getScrollY()));
            if(delta == 0){
                // You have reached bottom of the scroll view
            }
        }
谢谢大家。 经过一些测试后,我发现int i、int i1、int i2的值在实时时等于0,所以它解决了我的问题。 我现在不会使用你的建议,但我只是通过阅读从中了解到一些重要的概念