iMarker接口可以实现自定义高亮显示标记的视图
上一篇:MPAndroidChart的详细使用——动画
下一篇:MPAndroidChart的详细使用——ChartData类以及ChartData子类
创建一个类去实现IMarker接口
public class YourMarkerView extends MarkerView {
private TextView tvContent;
public MyMarkerView(Context context, int layoutResource) {
super(context, layoutResource);
// find your layout components
tvContent = (TextView) findViewById(R.id.tvContent);
}
// callbacks everytime the MarkerView is redrawn, can be used to update the
// content (user-interface)
@Override
public void refreshContent(Entry e, Highlight highlight) {
tvContent.setText("" + e.getY());
// this will perform necessary layouting
super.refreshContent(e, highlight);
}
private MPPointF mOffset;
@Override
public MPPointF getOffset() {
if(mOffset == null) {
// center the marker horizontally and vertically
mOffset = new MPPointF(-(getWidth() / 2), -getHeight());
}
return mOffset;
}
}
获取IMarker 对象以及使用
IMarker marker = new YourMarkerView();
chart.setMarker(marker);
获取已经存在的IMarker
IMarker marker = chart.getMarker();
预设的IMarker
MarkerView | 允许加载一个layout去展示对应的标注,继承这个类并重写refreshContent(…)方法来使用标注数据 |
---|---|
MarkerImage | 允许加载一张图片在标注上显示对应的图片,继承这个类并重写refreshContent(…)方法来使用标注数据 |