Hellocharts LineChartView scrollview滑动冲突

  最近项目中用到了折线图,看了下最后决定使用Hellocharts LineChartView,基本用法就不讲了,很多人写过了,就说说我遇到的难点,首先就是我一个界面中有7个折线图,把它们都放在scrollview中,这样就会造成LineChartView和scrollview的滑动冲突,这时候就想到把当你点击scrollview的时候把scrollview的滑动给禁了,体验特别不好,后来就想着判断有几个手指在屏幕上
chart_fengxiang.setOnTouchListener(new View.OnTouchListener() {
    @Override
    public boolean onTouch(View v, MotionEvent event) {
        int n=event.getPointerCount();
        if(n==1){Log.e("xxxxxxxxxxxx",n+"----1");
            //允许ScrollView截断点击事件,ScrollView可滑动
            return  false;
        }
        else{Log.e("xxxxxxxxx",n+"----2");
            //不允许ScrollView截断点击事件,点击事件由子View处理
          return true;
        }
    }
});
这样就会出现另一个问题,当有俩个手指在屏幕上的时候,n>1的时候,不仅把scrollview的滑动给禁了,把chart的滑动也给禁了,这个时候只需要稍作修改就可以了
chart_fengxiang.setOnTouchListener(new View.OnTouchListener() {
    @Override
    public boolean onTouch(View v, MotionEvent event) {
        int n=event.getPointerCount();
        if(n==1){
            //允许ScrollView截断点击事件,ScrollView可滑动
              srovll.requestDisallowInterceptTouchEvent(false);
        }
        else{
            //不允许ScrollView截断点击事件,点击事件由子View处理
           srovll.requestDisallowInterceptTouchEvent(true);
        }
        return false;
    }
});,这样子就可以啦拉。。。

还有个问题就是当数据多的时候屏幕上会出现超级多的数据,一坨一坨的,这个时候你就需要设置缩放级别了
Viewport tempViewport = new Viewport(0, chart_fengxiang.getMaximumViewport().height(), 9, 0) ;
chart.setCurrentViewport(tempViewport);


 
 


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值