本文出自: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项目实战(六)——自定义1MPAndroidChart滑动冲突解决(搞不定产品设计师就只能搞自己)
MPAndroidChart项目实战(七)——自定义横向柱状图
MPAndroidChart项目实战(八)——自定义分段堆积柱状图
MPAndroidChart项目实战(九)——自定义带文字分段堆积柱状图
五丶跪求关注下载源码,200粉小目标
欢迎关注我的博客及微信公众号,后面会给大家带来更多相关MPAndroidChart无法解决的仿MPAndroidChart图标自定义控件
源码下载记得顺便Star哦~
下载链接:https://github.com/JinBoy23520/MPAndroidChartDemoByJin