我使用surfaceview在Android中绘制饼图。为了知道饼图应该有多大,我需要将参数传递给 onDraw() 方法。我怎样才能做到这一点?在 onDraw() 内部,我对获取正确数据的 datahelper-class 进行查询。
我试图从 onDraw 调用一个 Activity 中的静态函数,该函数返回一个整数。但我想要一些更动态的东西,所以我可以将我需要的整数从 Activity 发送到 onDraw 并以饼图的形式获得结果。
有什么建议么?
我使用surfaceview在Android中绘制饼图。为了知道饼图应该有多大,我需要将参数传递给 onDraw() 方法。我怎样才能做到这一点?在 onDraw() 内部,我对获取正确数据的 datahelper-class 进行查询。
我试图从 onDraw 调用一个 Activity 中的静态函数,该函数返回一个整数。但我想要一些更动态的东西,所以我可以将我需要的整数从 Activity 发送到 onDraw 并以饼图的形式获得结果。
有什么建议么?
解决方案之一可以是这样的:
public class MySurfaceView extends SurfaceView
{
private MyParameter parameter;
public void setParameter(MyParameter parameter)
{
this.parameter=parameter;
}
@Override
public void onDraw(Canvas canvas)
{
if(this.parameter==null)
return; //nothing to draw...
//draw here...
}
}
//somewhere in code
MySurfaceView sView=(SurfaceView )findViewById(R.id.pie_chart);
//
sView.setParameter(new MyParameter(100,2000, false));
}