自定义ScrollView
2015-09-25 09:46
155 查看
1.首先新建一个ScrollViewExtend类,继承自ScrollView
2.重写onInterceptTouchEvent(一旦返回ture,代表事件在当前的viewGroup中会被处
理,则向下传递之路被截断)
3.重写onScrollChanged(int l,int t,int oldl,int oldt)
//computeVerticalScrollRang()方法是获取ScrollView中子布局的实际高度(可
能超过屏幕的高度)
t是代表ScrollView滑动停止之后距离顶部的距离,getHeight方法是获取ScrollV
Iew的高度(不包括超出屏幕的高度)
这样如果活动的距离再加上ScrollView的高度大于等于ScrollView中子布局的实
际高度,说明ScrollView不能再滑动了,就停止了。
if(t+getHeight() >= computeVerticalScrollRang()){
//ScrollView滑动到底部了
}
if(t >= CommonUtils.getScreenHeight()*2){
//ScrollView滑动了两个屏幕
}
有时候我们需要监听ScrollView的滑动情况,比如滑动了多少距离,是否滑倒布局
的顶部或者底部。可惜的是SDK并没有相应的方法。不过倒是提供了上面这个方法,但
是这个方法是不能被外界调用的,因此就需要把它暴露出去,方便使用。解决方式就是写
一个接口。
2.重写onInterceptTouchEvent(一旦返回ture,代表事件在当前的viewGroup中会被处
理,则向下传递之路被截断)
3.重写onScrollChanged(int l,int t,int oldl,int oldt)
//computeVerticalScrollRang()方法是获取ScrollView中子布局的实际高度(可
能超过屏幕的高度)
t是代表ScrollView滑动停止之后距离顶部的距离,getHeight方法是获取ScrollV
Iew的高度(不包括超出屏幕的高度)
这样如果活动的距离再加上ScrollView的高度大于等于ScrollView中子布局的实
际高度,说明ScrollView不能再滑动了,就停止了。
if(t+getHeight() >= computeVerticalScrollRang()){
//ScrollView滑动到底部了
}
if(t >= CommonUtils.getScreenHeight()*2){
//ScrollView滑动了两个屏幕
}
有时候我们需要监听ScrollView的滑动情况,比如滑动了多少距离,是否滑倒布局
的顶部或者底部。可惜的是SDK并没有相应的方法。不过倒是提供了上面这个方法,但
是这个方法是不能被外界调用的,因此就需要把它暴露出去,方便使用。解决方式就是写
一个接口。
相关文章推荐
- android 自定义ScrollView实现背景图片伸缩的实现代码及思路
- 自定义横向的ScrollView的开发和用途
- Android 自定义View EdgeEffect效果 ----ScrollView部分源代码剖析
- 自定义GridView:解决ScrollView嵌套GridView时GridView只显示两行
- Android PullToRrefresh 自定义下拉刷新动画 (listview、scrollview等)
- android自定义ViewPager之——处理与ScrollView的事件冲突
- android 自定义ScrollView实现反弹效果(以及解决和ListView之间的冲突)
- Android使用ScrollView和自定义的ListView实现两列的ListView
- 自定义ScrollView实现阻尼效果(类似于QQ下拉一段距离)
- 关于自定义View添加到layout文件和ScrollView中无法捕捉onFling事件 3ff8
- android 自定义ScrollView实现背景图片伸缩(仿多米,PaPa个人页面特效也称为阻尼效果)
- android 自定义ScrollView实现背景图片伸缩
- Android UI设计之<十三>自定义ScrollView,实现QQ空间阻尼下拉刷新和渐变菜单栏效果
- android 自定义ScrollView实现背景图片伸缩的实现代码及思路
- Android 自定义ScrollView ListView 体验各种纵向滑动的需求
- Android 自定义ScrollView
- Android自定义ScrollView实现放大回弹效果实例代码
- 一个 ScrollView 里面包含 viewpager 嵌套 listview 或 RecyclerView 极少代码实现的流畅滑动效果 处理一个两层滑动 view 的自定义布局,以最少的代码实现,
- ScrollView自定义水平滑动事件
- 1月11号 自定义ScrollView上拉加载的两种方式