android – MarkerView走出图表的最后一点

我正在使用MarkerView类在图表中显示标记视图.我创建的markerview布局包含两个textview,一个在另一个之下.

我面临的问题是图表上最后一个点的标记视图是图表中的一半,而图表中的一半.下面的两张图片清楚地说明了问题:

第一张图显示了图表中心点的标记视图,显示没有任何问题:

第二个图像,如下所示,显示图表最后一个点的标记视图,它是图表中的一半.

如何调整此标记视图以使其在图表区域内显示.

Wiki不会为markerview声明任何自定义.还有更多自定义吗?

此外,如果是多线图,如果我只点击其中一个线点,则markerview没有问题.但是,如果我在另一行的任何点上单击标记视图,则应用程序将失败.知道为什么会这样.

markerview类的代码如下:

public class TooltipView extends MarkerView {

private BaseGraphMetadata mBaseGraphMetadata;

private TextView mTooltipDate,mTooltipValue;

public TooltipView(Context context,int layoutResource,BaseGraphMetadata baseGraphMetadata) {
    super(context,layoutResource);
    mTooltipDate = (TextView)findViewById(R.id.tooltip_date);
    mTooltipValue = (TextView)findViewById(R.id.tooltip_value);
    mBaseGraphMetadata = baseGraphMetadata;
}

@Override
public void refreshContent(Entry entry,int i) {
    List<DrillDownInfo> drillDownInfoList = (List<DrillDownInfo>) entry.getData();
    DrillDownInfo drillDownInfo = drillDownInfoList.get(i);
    Map<String,String> group = drillDownInfo.getGroupByNameVsGroupByValue();
    Iterator iterator = group.entrySet().iterator();
    while (iterator.hasNext()) {
        Map.Entry pair = (Map.Entry)iterator.next();
        if(pair.getKey()!=null && pair.getValue()!=null) {
            String key = (String) pair.getKey();
            key = key.toupperCase();
            Double value = Double.parseDouble((String) pair.getValue());
            String formattedValue = mBaseGraphMetadata.getDataFormatter().getFormattedValue(value);
            mTooltipDate.setText(key + " : " + formattedValue);
        }
        iterator.remove();
    }
    mTooltipValue.setText(String.valueOf("VALUE : "+entry.getVal()));
}

@Override
public int getXOffset() {
    return -(getWidth() / 2);
}

@Override
public int getYOffset() {
    return -getHeight();
}
}

解决方法

只需在MarkerView中添加一些逻辑.如果突出显示最后一个值,则getXOffset()方法应返回不同的值.

返回的内容是在refreshContent(…)方法中计算的.

此外,您还可以查看以下xml属性

android:clipChildren="false"
android:clipToPadding="false"

应该为图表视图设置哪个.

相关文章

这篇“android轻量级无侵入式管理数据库自动升级组件怎么实现...
今天小编给大家分享一下Android实现自定义圆形进度条的常用方...
这篇文章主要讲解了“Android如何解决字符对齐问题”,文中的...
这篇文章主要介绍“Android岛屿数量算法怎么使用”的相关知识...
本篇内容主要讲解“Android如何开发MQTT协议的模型及通信”,...
本文小编为大家详细介绍“Android数据压缩的方法是什么”,内...