113、ScrollView滑动到了最底部

ScrollView使用 http://www.cnblogs.com/androidsj/archive/2012/03/04/2379387.html

滚动到顶部判断:getScrollY() == 0滚动到底部判断:View childView = getChildAt(0);childView.getMeasuredHeight() <= getScrollY() + getHeight();其中getChildAt表示得到ScrollView的child ViewchildView.getMeasuredHeight()表示得到子View的高度, getScrollY()表示得到y轴的滚动距离,getHeight()为scrollView的高度getScrollY()达到最大时加上scrollView的高度就的就等于它内容的高度了.判断滑动位置的地方,可以有两种方式:1、实现OnTouchListener来监听是否滑动到最底部 OnTouchListener onTouchListener=new OnTouchListener(){              @Override              public boolean onTouch(View v, MotionEvent event) {                 switch (event.getAction()) {                    case MotionEvent.ACTION_UP:                        if (childView  != null && childView .getMeasuredHeight()< = getScrollY() + getHeight()) {                        } else if (getScrollY() == 0) {                        }                    break;                }                return false;            } } 2、重写ScrollView的onScrollChanged的方法,在onScrollChanged函数中判断public class myScrollView extends ScrollView{    public myScrollView(Context context)    {        super(context);    }    public myScrollView(Context context, AttributeSet attributeSet)    {        super(context,attributeSet);    }    @Override    protected void onScrollChanged(int l, int t, int oldl, int oldt)    {        View view = (View)getChildAt(getChildCount()-1);        int d = view.getBottom();        d -= (getHeight()+getScrollY());        if(d==0)        {            //you are at the end of the list in scrollview             //do what you wanna do here        }        else            super.onScrollChanged(l,t,oldl,oldt);    }}
时间: 2024-11-08 18:29:12

113、ScrollView滑动到了最底部的相关文章

Android监听ScrollView滑动到顶端和底部

MainActivity如下: package cn.testscrollview; import android.os.Bundle; import android.view.MotionEvent; import android.view.View; import android.view.View.OnTouchListener; import android.widget.ScrollView; import android.app.Activity; /** * Demo描述: * 监

怎么判断android中ScrollView滑动到了最底部?

滚动到顶部判断: getScrollY() == 0 滚动到底部判断: View childView = getChildAt(0); childView.getMeasuredHeight() <= getScrollY() + getHeight(); 其中getChildAt表示得到ScrollView的child View childView.getMeasuredHeight()表示得到子View的高度, getScrollY()表示得到y轴的滚动距离, getHeight()为scr

Android中监听ScrollView滑动停止和滑动到底部

1.监听ScrollView滑动停止: [java] view plaincopy /********************监听ScrollView滑动停止*****************************/ scrollView.setOnTouchListener(new OnTouchListener() { private int lastY = 0; private int touchEventId = -9983761; Handler handler = new Hand

Android 监听 ScrollView 滑动到最底部。

做产品时,有一个需求,需要监听ScrollView滑动到最底部.在网上找了些方法,都有这样或那样的问题,要不就是监听不精确, 要不就是重复监听,那些代码没有产品化,很不可靠. 经过自己试验,终于找到了个能够精确监听的实现方法.代码如下: 1 public class ScrollBottomScrollView extends ScrollView { 2 3 private OnScrollBottomListener _listener; 4 private int _calCount; 5

scrollView滑动控件

sd 是iOS中的滑动控件,可以来解决当药显示内容个区域超过屏幕大小时,可以通过滑动操作看全内容区域,他是滑动控件的基类.UITableView.UITextView的父类 属性 设置内容区域的大小 contentSize 关闭水平指示器 showsHorizontalScrollIndicator 关闭竖直指示器 showsVerticalScrollIndicator 设置是否可以滑动 scrollEnabled 关闭反弹效果 bounces 设置偏移量 contentOffset其实是修改

Android 屏蔽ScrollView滑动操作

屏蔽ScrollView滑动操作,如下,会用到ViewConfiguration这个类,这个类可以获取到用户是否为滑动操作的临界值. 代码如下: package com.xx.uikit.view; import android.content.Context; import android.util.AttributeSet; import android.view.MotionEvent; import android.view.ViewConfiguration; import andro

小胖说事10------iOS scrollview作用原理(一个大的scrollview包含一个小的scrollview,如何滑动小的scrollview的时候,大的scrollview滑动小的不动

今天做了一个项目,有这样一个需求,就是一个大的scrollview包含一个小的scrollview,如何滑动小的scrollview的时候,大的scrollview滑动,小的srollview不滑动. 我们知道当多个视图进行叠加的时候,touch事件是作用到最上面的视图上,但是如果父视图是UIScrollView,如果默认,可能touch子视图会造成UIScrollView的滚动. UIScrollView滚动的原因,可以看UIScrollView 原理. 我在这里简单的描述一下,UIScrol

ScrollView滑动的监听

ScrollView滑动的监听 有时候我们需要监听ScrollView的滑动事件,来完成业务需求. 第一种: 可以直接实现OnTouchListener接口,在这里面写你所需要的操作 scrollView.setOnTouchListener(new OnTouchListener(){ @Override public boolean onTouch(View v, MotionEvent event) { if(event.getAction()==MotionEvent.ACTION_MO

ScrollView监听滑动到顶部和底部的方法

不需要监听滑动位置,只需要重写ScrollView的onOverScrolled和stopNestedScroll方法就可以了 public class ReadScrollView extends ScrollView{ private int mScrollY = 0; private boolean mClampedY = false; public ReadScrollView(Context context) { super(context); } public ReadScrollV