android achartengine 背景,android – AchartEngine XYchart背景颜色问题

我在使用achart引擎的xychart中遇到了问题.实际上,背景颜色仅在轴区域内设置.

我的代码:

private XYMultipleSeriesDataset mDataset = new XYMultipleSeriesDataset();

private XYMultipleSeriesRenderer mRendererXY = new XYMultipleSeriesRenderer();

private XYSeries mSeriesXY;

private GraphicalView mXYView;

private ViewFlinger mFlingy;

private int index = 0;

public StatChallengeTabManager(Context ctx, ViewFlinger flingy) {

mCtx = ctx;

mFlingy = flingy;

mStatDBManagerCh = new StatDBManagerChallenge(ctx);

}

public void drawStats() {

LayoutInflater inflate = (LayoutInflater) mCtx

.getSystemService(Context.LAYOUT_INFLATER_SERVICE);

v1 = inflate.inflate(R.layout.v1, null);

v2 = inflate.inflate(R.layout.v2, null);

mFlingy.addView(v1);

mFlingy.addView(v2);

drawFirstChart();

drawSecondChart();

}

private void drawFirstChart() {

if (mXYView == null) {

mRendererXY.setAxisTitleTextSize(30);

mRendererXY.setChartTitleTextSize(40);

mRendererXY.setChartTitle(mCtx.getString(R.string.score_trend));

mRendererXY.setLabelsColor(Color.BLACK);

mRendererXY.setXLabelsColor(Color.BLACK);

mRendererXY.setYLabelsColor(0, Color.BLACK);

mRendererXY.setMargins(new int[] { 50, 60, 0, 50 });

mRendererXY.setLabelsTextSize(30);

mRendererXY.setZoomButtonsVisible(false);

mRendererXY.setPointSize(8);

mRendererXY.setDisplayValues(true);

mRendererXY.setShowLegend(false);

mRendererXY.setScale(.8f);

XYSeriesRenderer r = new XYSeriesRenderer();

r.setColor(COLORS[0]);

r.setPointStyle(PointStyle.CIRCLE);

r.setFillBelowLine(false);

r.setFillPoints(true);

mRendererXY.addSeriesRenderer(r);

mRendererXY.setXTitle(mCtx.getString(R.string.game_id));

mRendererXY.setYTitle(mCtx.getString(R.string.game_score));

mRendererXY.setFitLegend(true);

mRendererXY.setAxesColor(Color.BLACK);

mRendererXY.setShowGrid(true);

mRendererXY.setXAxisMin(-0.5);

mRendererXY.setYAxisMin(0);

mRendererXY.setXAxisMax(10.5);

mRendererXY.setZoomEnabled(false);

mRendererXY.setYAxisMax(100000);

mRendererXY.setInScroll(true);

mRendererXY.setClickEnabled(true);

mRendererXY.setBackgroundColor(Color.argb(255, 255, 248, 220));

mRendererXY.setApplyBackgroundColor(true);

int[] res = mStatDBManagerCh.getGameScores();

mSeriesXY = new XYSeries(mCtx.getString(R.string.score_trend));

for (int i = 0; i < res.length; i++) {

if (res[i] == 0)

continue;

mSeriesXY.add(i, res[i]);

}

mDataset.addSeries(mSeriesXY);

mXYView = ChartFactory.getLineChartView(mCtx, mDataset, mRendererXY);

LinearLayout layout = (LinearLayout) v1.findViewById(R.id.chart1);

layout.addView(mXYView, new LayoutParams(

LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT));

} else {

LinearLayout layout = (LinearLayout) v1.findViewById(R.id.chart1);

layout.addView(mXYView, new LayoutParams(

LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT));

mXYView.repaint();

}

}

而v1.xml是:

android:layout_width="match_parent"

android:layout_height="match_parent"

android:orientation="vertical" >

android:id="@+id/chart1"

android:layout_width="fill_parent"

android:layout_height="wrap_content"

android:layout_weight="1"

android:orientation="horizontal" />

解决方法:

只需调用mRendererXY.setMarginsColor(color);并且您也将设置边距背景.

标签:achartengine,android

来源: https://codeday.me/bug/20190901/1782386.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值