AndroidPlot饼图上的TouchEvent
问题描述:
返回null段我用饼图演示不同的是段动态加载如下面的代码片段:AndroidPlot饼图上的TouchEvent
public Segment[] segments;
segments = new Segment[dataList.size()];
int i=0;
for (DataList d: dadosList)
{
segments[i] = new Segment(d.name(),Float.parseFloat(d.value()));
SegmentFormatter sf1 = new SegmentFormatter(Color.parseColor(d.getColor_chart()));
sf1.getLabelPaint().setShadowLayer(3, 0, 0, Color.BLACK);
sf1.getFillPaint().setMaskFilter(emf);
pie.addSegment(segments[i],sf1);
i++;
}
pie.setOnTouchListener(new View.OnTouchListener() {
@Override
public boolean onTouch(View view, MotionEvent motionEvent) {
PointF click = new PointF(motionEvent.getX(), motionEvent.getY());
Log.d(TAG,"CLICK PIE CHART");
if(pie.getPie().containsPoint(click)) {
Log.d(TAG,"GET PIE");
Segment segment = pie.getRenderer(PieRenderer.class).getContainingSegment(click);
if(segment != null) {
Log.d(TAG,"SEGMENT IS NOT NULL");
final boolean isSelected = getFormatter(segment).getOffset() != 0;
deselectAll();
setSelected(segment, !isSelected);
pie.redraw();
String type = segment.getTitle();
new FetchDataListByTypeTask(type).execute();
}
}
return false;
}
但是,当点击第一个段,返回null段。
这是一个错误?或者我做错了什么?
UPDATE
当段是饼图的大于50%,会出现此错误。
答
这已在Androidplot 1.5.1中修复。
感谢1.5.1版本正常工作。 – Petryx