mpandroidchart出现Cannot add Entry because dataSetIndex too high or too low解决办法

这个问题,谈谈我的解决方法,
我是通过异步线程去更新数据的,
第一次尝试用eventbus去异步更新数据,结果报错:Cannot add Entry because dataSetIndex too high or too low,跟踪数据流发现在addEntity的时候出现的时候数据进来了两次,估计就是这个问题了。
解决办法,我换了一个思路进行处理,直接用while(true)进行处理,暂时问题解决了,具体需要再测是不是可以实时更新数据了。

 CbtLogs.e("onDataListener:" + "sampleECU");//线程自动发送数据
            new Thread(new Runnable() {
                @Override
                public void run() {
                    while (true){
                        try {
                            Thread.sleep(50);
                            ArrayList<Byte> recevieData=udsProcess.getIso14229().getReceiveData();

                            System.out.printf("recevieDataCANMessage = ");
                                        for (byte b : recevieData) {
                                            System.out.printf("%2h ", (int)(b&0xFF));
                                        }
                            mModel.updateUDSData(recevieData);//将获取到的蓝牙数据传递给model处理,
                            mview.showSampleView(((SampleDataModel) mModel).getMap());//将获取到的map传递给view用来更新界面
                        } catch (InterruptedException e) {
                            e.printStackTrace();
                        }
                    }
                }
            }).start(); 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

鼾声鼾语

感谢您的支持鼓励!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值