MPAndroidChart -Use multiple text instead of “No Chart Data available” depends on the data

别等时光非礼了梦想. 提交于 2019-12-24 15:24:55

问题


I tried to change MPAndroid Chart text of "No Chart Data available" into "Loading Data..." while the data is retrieving.I had done this.But when there is no data the chart layout should shows ," NO DATA".

I am getting the Same Text(Loading Data...) eventhough there is no data.

    protected void onDraw(Canvas canvas) {
     if (!mDataNotSet && mData==null) {
     canvas.drawText("NO DATA", getWidth() / 2, getHeight() / 3, mInfoPaint);
     return;
} 

if (mDataNotSet && mData == null || mData.getYValCount() <= 0) {
 canvas.drawText"Laoding Data...",getWidth() / 2, getHeight() / 2, mInfoPaint);

     if (!TextUtils.isEmpty(mNoDataTextDescription))
     {
     float textOffset = -mInfoPaint.ascent() + mInfoPaint.descent();
     canvas.drawText(mNoDataTextDescription, getWidth()/2,(getHeight() / 2)
                            + textOffset, mInfoPaint);
                }
     return;
            }
     if (!mOffsetsCalculated) {
       calculateOffsets();
                mOffsetsCalculated = true;
            }
        }

回答1:


you can change it as below ,

LineChart mChart;

mChart.setDescription("");

mChart.setNoDataTextDescription("You need to provide data for the chart.");

mChart.setNoDataTextDescription("Your message");



回答2:


Use the setNoDataText method to set the message back to whatever text you want once data loading is done.

So when data load is started, run

chart.setNoDataText("Loading Data...");

After data load is done

 chart.setNoDataText("NO DATA");


来源:https://stackoverflow.com/questions/34648516/mpandroidchart-use-multiple-text-instead-of-no-chart-data-available-depends-o

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!