ScrollView中嵌套ViewFlow滑动卡顿解决办法
2016-12-26 16:13
288 查看
现在很多app中都有banner图片,单纯的使用ViewFolow自定义控件时可能不会出现卡顿,由于项目需要我也开发了一个banner,是在fragment中使用
未修改之前布局文件是这样滴
用到的原声的 ScrollView,下面嵌套了自定义的ViewFlow,这个自定义的VIewFloow控件网上有很多,这里就不bb了
然后这样滑动时时候有些卡顿,不是很流畅,找了很久才发现原因,原来需要从新自定义
[java] view
plain copy
print?
ScrollView ,复写<span style="font-family: Arial, Helvetica, sans-serif;">onInterceptTouchEvent方法,</span>
[java] view
plain copy
print?
package cn.miandanhui.widget;
import android.content.Context;
import android.util.AttributeSet;
import android.view.MotionEvent;
import android.widget.ScrollView;
public class MyScrollView extends ScrollView {
private float xDistance, yDistance, xLast, yLast;
public MyScrollView(Context context) {
super(context);
}
public MyScrollView(Context context, AttributeSet attrs) {
super(context, attrs);
}
public MyScrollView(Context context, AttributeSet attrs, int defStyle) {
super(context, attrs, defStyle);
}
@Override
public boolean onInterceptTouchEvent(MotionEvent ev) {
switch (ev.getAction()) {
case MotionEvent.ACTION_DOWN:
xDistance = yDistance = 0f;
xLast = ev.getX();
yLast = ev.getY();
break;
case MotionEvent.ACTION_MOVE:
final float curX = ev.getX();
final float curY = ev.getY();
xDistance += Math.abs(curX - xLast);
yDistance += Math.abs(curY - yLast);
xLast = curX;
yLast = curY;
if (xDistance > yDistance) {
return false;
}
}
return super.onInterceptTouchEvent(ev);
}
}
然后修改布局文件
这样修改一下,重新运行了一下,发现流畅多了,我的这种修改方案是在ScrollView里面嵌套ViewFollow哟,不要搞错啦
下面我把那个自定义ViewFlow的代码给大家,希望帮助开发的朋友们,下面是下载链接 http://download.csdn.net/detail/shaozucheng/9169269
对了这个控件可以结合ImageLoader使用加载网络图片,不一定定死的图片,至于使用ImageLoade加载网络图片相信网上有很多例子
未修改之前布局文件是这样滴
用到的原声的 ScrollView,下面嵌套了自定义的ViewFlow,这个自定义的VIewFloow控件网上有很多,这里就不bb了
然后这样滑动时时候有些卡顿,不是很流畅,找了很久才发现原因,原来需要从新自定义
[java] view
plain copy
print?
ScrollView ,复写<span style="font-family: Arial, Helvetica, sans-serif;">onInterceptTouchEvent方法,</span>
[java] view
plain copy
print?
package cn.miandanhui.widget;
import android.content.Context;
import android.util.AttributeSet;
import android.view.MotionEvent;
import android.widget.ScrollView;
public class MyScrollView extends ScrollView {
private float xDistance, yDistance, xLast, yLast;
public MyScrollView(Context context) {
super(context);
}
public MyScrollView(Context context, AttributeSet attrs) {
super(context, attrs);
}
public MyScrollView(Context context, AttributeSet attrs, int defStyle) {
super(context, attrs, defStyle);
}
@Override
public boolean onInterceptTouchEvent(MotionEvent ev) {
switch (ev.getAction()) {
case MotionEvent.ACTION_DOWN:
xDistance = yDistance = 0f;
xLast = ev.getX();
yLast = ev.getY();
break;
case MotionEvent.ACTION_MOVE:
final float curX = ev.getX();
final float curY = ev.getY();
xDistance += Math.abs(curX - xLast);
yDistance += Math.abs(curY - yLast);
xLast = curX;
yLast = curY;
if (xDistance > yDistance) {
return false;
}
}
return super.onInterceptTouchEvent(ev);
}
}
然后修改布局文件
这样修改一下,重新运行了一下,发现流畅多了,我的这种修改方案是在ScrollView里面嵌套ViewFollow哟,不要搞错啦
下面我把那个自定义ViewFlow的代码给大家,希望帮助开发的朋友们,下面是下载链接 http://download.csdn.net/detail/shaozucheng/9169269
对了这个控件可以结合ImageLoader使用加载网络图片,不一定定死的图片,至于使用ImageLoade加载网络图片相信网上有很多例子
相关文章推荐
- ScrollView中嵌套ViewFlow滑动卡顿解决办法
- 自定义ViewFlow使用,ScrollView中嵌套ViewFlow滑动问题解决(---My 20150407)
- NestedScrollView嵌套RecyclerView时滑动不流畅问题的解决办法
- 解决ScrollView嵌套RecyclerView 滑动卡顿和嵌套多个RecyclerView 显示不全的问题
- Android Scrollview嵌套RecyclerView导致滑动卡顿问题解决
- scrollview 嵌套 viewpager 滑动冲突的解决办法
- Scrollview嵌套viewpager时,手动侧滑viewpager出现滑动不够灵敏解决办法
- 解决ScrollView嵌套RecyclerView 滑动卡顿和嵌套多个RecyclerView 显示不全的问题
- 解决ScrollView嵌套RecyclerView时滑动出现的卡顿
- NestedScrollView嵌套RecyclerView时滑动不流畅问题的解决办法
- 横向滑动的listview效果的实现方法,scrollview嵌套水平滑动的listview卡顿的解决方法
- ListView /GrideView 等具有滑动特性的View嵌套在Scrollview里边会出现 只显示一小行的解决方法
- 解决ScrollView嵌套ViewPager出现的滑动冲突问题
- 解决在scrollview上下滑动嵌套scrollview,viewpager水平滑动时问题
- Android 解决 ScrollView 嵌入 HorizontalScrollView 后滑动卡顿问题
- 在ListView中嵌套ViewFlow,ViewFlow滑动有些卡顿的问题~
- 【事件冲突】ScrollView嵌套ViewPager冲突的解决办法
- 解决SwipeRefreshLayout和ScrollView中嵌套ViewPager卡顿问题
- 解决ScrollView嵌套viewpager滑动事件冲突问题
- 解决VerticalViewPager中嵌套ScrollView滑动问题