1

我想让我的所有标记一次可见(例如天气图,带有图标)。

我想出了这个,但也许有人知道更好的解决方案?

public class MyChart extends LineChart {

    //...constructors

    public void drawAllMarkers() {
        List<Highlight> all = new ArrayList<Highlight>();

        for (int i = 0; i < mData.getXValCount(); i++) {
            for (int j = 0; j < mData.getDataSetCount(); j++) {
                all.add(new Highlight(i, j));
            }
        }
        highlightValues(all.toArray(new Highlight[all.size()]));
        drawMarkers();
    }
}

使用这个解决方案,我仍然需要处理点击事件,并检查这会破坏哪些其他功能。

 chart.setOnTouchListener(new View.OnTouchListener() {
        @Override
        public boolean onTouch(View v, MotionEvent event) {
            //consume all touches
            return true;
        }
    });
4

0 回答 0