本文出自:http://blog.csdn.net/dt235201314/article/details/76576618
一丶效果图
二丶功能点技术点
1.解决MPAndroidChart的LineChart在ViewPager+Fragment滑动冲突解决
2.技术点Android Touch事件的分发机制的运用
getParent().requestDisallowInterceptTouchEvent(true);
含义:当传入的参数为true时,表示子组件要自己消费这次事件,告诉父组件不要拦截(抢走)这次的事件。
三丶核心代码
自定义继承LineChart的控件,当LineChart在ViewPager+Fragment中时使用
public class LineChartInViewPager extends LineChart { PointF downPoint = new PointF(); public LineChartInViewPager(Context context) { super(context); } public LineChartInViewPager(Context context, AttributeSet attrs) { super(context, attrs); } public LineChartInViewPager(Context context, AttributeSet attrs, int defStyle) { super(context, attrs, defStyle); } @SuppressLint("ClickableViewAccessibility") @Override public boolean onTouchEvent(MotionEvent evt) { switch (evt.getAction()) { case MotionEvent.ACTION_DOWN: downPoint.x = evt.getX(); downPoint.y = evt.getY(); break; case MotionEvent.ACTION_MOVE: LogUtils.i("getScrollX ", getScrollX() + "" ); if (getScaleX() > 1 && Math.abs(evt.getX() - downPoint.x) > 5) { getParent().requestDisallowInterceptTouchEvent(true); } break; } return super.onTouchEvent(evt); } }
四丶相关文章链接
MPAndroidChart常见设置属性(一)——应用层
MPAndroidChart项目实战(一)——实现对比性柱状图
MPAndroidChart项目实战(二)——双平滑曲线(双折线图)和MarkView实现
MPAndroidChart项目实战(三)——饼状图实现和文字重合问题解决
MPAndroidChart项目实战(四)——柱状图实现及X轴文字不显示问题和柱状图上显示文字
MPAndroidChart X轴文字斜着显示
MPAndroidChart项目实战(五)——组合图实现趋势图
五丶源码下载
欢迎关注我的博客及微信公众号,后面会给大家带来更多相关MPAndroidChart无法解决的仿MPAndroidChart图标自定义控件
源码下载记得顺便Star哦~
下载链接:https://github.com/JinBoy23520/MPAndroidChartDemoByJin