scrollview 使用setOnTouchListener后停止滑动:
解决办法:
一、
int touchY = 0;
private boolean isScoll ;
private void scrollView() {
behavorLayout.setOnTouchListener(new OnTouchListener() {
private int lastY = 0;
private int touchEventId = -9983761;
Handler handler = new Handler() {
@Override
public void handleMessage(Message msg) {
super.handleMessage(msg);
View scroller = (View) msg.obj;
if (msg.what == touchEventId) {
if (lastY == scroller.getScrollY()) {
handleStop(scroller);
} else {
handler.sendMessageDelayed(handler.obtainMessage(
touchEventId, scroller), 1);
lastY = scroller.getScrollY();
}
}
}
};
@Override
public boolean onTouch(View v, MotionEvent event) {
isScoll = false;
int eventAction = event.getAction();
int y = (int) event.getRawY();
switch (eventAction) {
case MotionEvent.ACTION_UP:
if (Math.abs(touchY - y) < 20) {
} else {
handler.sendMessageDelayed(handler.obtainMessage(
touchEventId, v), 5);
}
break;
default:
break;
}
return false;
}
private void handleStop(Object view) {
this.finish(); //添加处理的代码
}
});
}
解决办法二、
public ScrollView scrollView;
private int scrollViewY;
scrollView = (ScrollView)findViewById(R.id.viewStatusDetailSV);
scrollView.setOnTouchListener(new OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
if (event.getAction() == MotionEvent.ACTION_UP) {
/** 滑动到顶部和底部做处理 **/
if (scrollView.getScrollY() == 0) {
Toast.makeText(context, "到达顶部了", Toast.LENGTH_SHORT).show();
} else if (scrollView.getScrollY() - scrollViewY < 2 && scrollView.getScrollY() >= scrollViewY) {
Toast.makeText(context, "到达底部了" + scrollView.getScrollY(), Toast.LENGTH_SHORT).show();
} else {
scrollViewY = scrollView.getScrollY();
}
//添加处理的代码
}
return false;
}
});
分享到:
相关推荐
android 解决ScrollView和listView嵌套冲突问题(保证在ScrollView中滑动listView只响应listView的滑动)
解决webView与scrollView结合一起滑动webview一片空白
完美解决listView嵌套scrollView的滑动冲突问题
Android中自定义ListView,解决scrollview嵌套listview 滑动事件冲突,是非常常见的问题,我写了一个例子和大家交流学习
前言:今天在开发的时候遇到这样的问题,最外层是ScrollView,里面嵌套了一个横向滑动的日历控件,在滑动日历的时候很卡顿。看到这种问题,自然而然的就会想到scrollview和其他可滑动控件的冲突问题。 解决思路 用户...
Scrollview和gridview同时使用的时候,Scrollview滑动gridview不滑动,Gridview滑动Scrollview不滑动!
用ViewDragHelper做的自定义侧滑菜单,并解决了与ScrollView的滑动事件冲突问题,方便大家研究
主要解决ScrollView与ListView的滑动冲突
ScrollView嵌套ListView,当ListView的顶部到达屏幕顶部时,listView才具有滑动能力,当listView滑动到两端时,会触发ScrollView滑动
ScrollView嵌套RecycleView,会出现RecycleView显示不出来的问题,或者滑动不顺畅的问题,这里可以帮你解决。
很多朋友因项目需求问题需要在ScrollView中...在此个大家分享一种一个案例源代码能够很随意的解决ScrollView与ListView、ScrollView与ScrollView的嵌套滑动的问题,个人亲手测试200%达到你预期的目的!希望能帮到大家!
ScrollView完美嵌套demo,解决两个ScrollView嵌套的滑动问题
ScrollView嵌套ListView滑动冲突的解决方案
快速滑动内容消失的问题。 修改点: // 开启动画移动 public void animation() { // 开启移动动画 TranslateAnimation ta = new TranslateAnimation(0, -inner.getLeft(), 0, -inner.getTop()); ta.setDuration...
解决listview潜逃在scrollview中的滑动冲突
自己写的解决viewpager和scrollview的冲突问题,需要的可以下载
使用外部拦截法 、内部拦截法解决ScrollView+ListView 解决滑动冲突
ScrollView嵌套GridView不能滚动的问题解决方案,重写GridView方法使其不能滚动,就不会与ScrollView的滚动冲突,从而解决问题
一个简单的demo,包含了onTouch,onLongClick,onClick调用日志,顺便解决ScrollView事件冲突,详情看博文:http://blog.csdn.net/msl0903/article/details/24205973
RecyclerView 嵌套 RecyclerView 滑动冲突解决----------------------- 本人亲测