问题
I am using achartengine to dispaly the line chart in my application.I need to add the bg image for the chart , but when I set the bg image in xml , its not working. Have anyone tried this? Thanks in advance.
回答1:
Firstly, you need to add chart into your activity, and set preferred image as background in activity layout. (Take a look at XYChartBuilder in AChartEngineneDemo to see how to do that)
Secondly, set transparent background for chart and chart margin:
mRenderer.setApplyBackgroundColor(true);
mRenderer.setBackgroundColor(Color.TRANSPARENT);
mRenderer.setMarginsColor(getResources().getColor(R.color.transparent_background));
Finally, create your own transparent background since the Color.TRANSPARENT doesn't work for chart margin:
<color name="transparent_background">#00FF0000</color>
Hope this helps :)
回答2:
You just replace that code of line with this one:
mRenderer.setMarginsColor(Color.argb(0x00, 0x01, 0x01, 0x01));
回答3:
This can be possible to set the background of line chart. it was a trick that works for me.
// RelativeLayout layout_ChartView = (RelativeLayout) findViewById(R.id.chart_View);
private GraphicalView mChartView;
if(mChartView==null){
mChartView.setBackgroundDrawable(getResources().getDrawable(R.drawable.bg));
layout_ChartView.addView(mChartView, new LayoutParams(LayoutParams.FILL_PARENT,300));
mChartView = ChartFactory.getCubeLineChartView(this,mDataset,mRenderer, 0.2f);
}
else{
mChartView.repaint();
}
回答4:
Did you set your margincolor? Like this?
mRenderer.setApplyBackgroundColor(true);
mRenderer.setBackgroundColor(Color.RED);
mRenderer.setMarginsColor(Color.RED);
This will give a whole view of your graph background to red color
回答5:
mRenderer.setBackgroundColor(Color.Transparent);
And the Layout background where show the chart set your background image. Done.
回答6:
For removing:
mRenderer.setMargins(new int[]{0,0,0,0});
And it will remove the margin :) its simple
For setting color:
mRenderer.setApplyBackgroundColor(true);
mRenderer.setBackgroundColor(Color.TRANSPARENT);
回答7:
If you want to set transparent background color, you can try:
renderer.setMarginsColor(Color.argb(0x00, 0xff, 0x00, 0x00));
It just be work for me!
来源:https://stackoverflow.com/questions/8738545/how-to-set-the-background-image-for-achartengine-line-chart-in-android