如何在MPAndroid Chart中的自定义绘图值上创建clicklistener?

时间:2018-06-13 01:38:24

标签: android onclicklistener mpandroidchart

enter image description here

我想点击文字然后会触发事件。 但我点击个别条形图,没有任何反应。 我点击空白区域,也没有任何反应。

如何实现这个功能??

这是我的代码。

MainActivity.java

barChart.setRenderer(new HBarCharTextRender(barChart, barChart.getAnimator(), barChart.getViewPortHandler()));

HBarCharTextRender.java

public class HBarCharRender extends HorizontalBarChartRenderer {
private static final String TAG = "HBarCharRender";
public HBarCharImgRender(BarDataProvider chart, ChartAnimator animator, ViewPortHandler viewPortHandler) {
    super(chart, animator, viewPortHandler);

}

@Override
protected void drawDataSet(Canvas c, IBarDataSet dataSet, int index) {
    super.drawDataSet(c, dataSet, index);
    //drawBarImages(c, dataSet, index);
    drawText(c,dataSet,index);

}


protected void drawText(Canvas c, IBarDataSet dataSet, int index) {
    BarBuffer buffer = mBarBuffers[index];

    float left; //avoid allocation inside loop
    float right;
    float top;
    float bottom;


    for (int j = 0; j < buffer.buffer.length * mAnimator.getPhaseX(); j += 4) {

        int i = j/4; //index
        left = buffer.buffer[j];
        right = buffer.buffer[j + 2];
        top = buffer.buffer[j + 1];
        bottom = buffer.buffer[j + 3];

        BarEntry entry = dataSet.getEntryForIndex(j / 4);

        final float valueOffsetPlus = Utils.convertDpToPixel(10f);
        applyValueTextStyle(dataSet);

        drawValue(c, dataSet.getValueFormatter(), 0, entry, i, left,
                top,
                dataSet.getValueTextColor(j / 4));

    }
}

我也参考了以下文章,但不起作用。 Click events on pie chart - mpandroid

0 个答案:

没有答案