Android 使用复选框隐藏/显示AChartEngine系列
基本上,我有一个包含四个不同系列的图表,默认情况下会同时显示所有四个系列。我想允许用户通过标记复选框来隐藏和/或再次显示它们 我发现了一个类似的问题,并遵循了给出的两个建议,但都不起作用。下面是我的一个复选框现在的样子:Android 使用复选框隐藏/显示AChartEngine系列,android,checkbox,achartengine,android-checkbox,Android,Checkbox,Achartengine,Android Checkbox,基本上,我有一个包含四个不同系列的图表,默认情况下会同时显示所有四个系列。我想允许用户通过标记复选框来隐藏和/或再次显示它们 我发现了一个类似的问题,并遵循了给出的两个建议,但都不起作用。下面是我的一个复选框现在的样子: checkBox1.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { if(((CheckBox
checkBox1.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
if(((CheckBox)v).isChecked()){
multiRenderer.addSeriesRenderer(distanceRenderer);
// distanceRenderer.setColor(Color.parseColor("#990000")); //(making transparent method)
}
else{
//distanceRenderer.setColor(Color.TRANSPARENT); //(making transparent method)
multiRenderer.removeSeriesRenderer(distanceRenderer);
}
}
});
其想法是,当我取消选中复选框时,我将隐藏该渲染器,当我再次选中它时,它将再次添加
在我链接到的线程的建议中,他们说删除所有渲染器,然后重新输入不应该隐藏的渲染器。我也试过了,但是没有用。第三种选择是,只要我想让它消失,就把颜色改成透明,这也行不通
我对它进行了调试,它正处于正确的状态,但什么也没发生。有什么我需要称之为我错过的吗
谢谢
编辑:我不知道这是否有帮助,但我还尝试调用xymultiplesseriesdataset的函数repaint()。这导致了一个非法的州例外,soooo。。。。还是不行…为了隐藏起见,试试这个:
r.setColor(Color.TRANSPARENT);
mChartView.repaint();
其中
r
是XYSeriesRenderer
工作得很好!非常感谢你!我猜它以前不起作用,因为每当我试图添加或删除序列时,我都调用了repaint()函数。。。我不够聪明,每次我要改变XYSERIESRENDER的颜色时都会尝试