どらのガジェット日誌

スマホやタブレット、カメラなどいろんなことを浅く広く。

MPAndroidChartでNoDataTextの色を変更する

time 2016/03/30

現在、とあるアプリを作っていてグラフを表示する必要があり、MPAndroidChartという有名なライブラリを使わせてもらっています。

PhilJay/MPAndroidChart
MPAndroidChart – A powerful Android chart view / graph view library, supporting line- bar- pie- radar- bubble- and candlestick charts as well as scaling, dragging and animations.

んで、NoDataTextというところに、データが設定されてない状態で表示させたい文章を設定できるんですが、何故かこの文字色がデフォルトでオレンジ色。

mInfoPaint.setColor(Color.rgb(247, 189, 51)); // orange

視認性が悪いため、変えようと思ったのですが、setNoDataTextColor()的なメゾットが見当たらない。
最近これを追加するPull Requestが送られているようですが、反映されておらず。
Chart.javaを見渡してみると、

432: canvas.drawText(mNoDataText, getWidth() / 2, y, mInfoPaint);

の記述を発見。setPaintメゾットを用いて、

Paint p = new Paint();
p.setColor(ContextCompat.getColor(context, R.color.black));
p.setTextSize((int) TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP, 16.0f, getResources().getDisplayMetrics())); //dpでサイズ指定
p.setTextAlign(Paint.Align.CENTER);
pieChart.setPaint(p, Chart.PAINT_INFO);

とすれば解決しました。TextAlignの指定を忘れずに。

down

コメントする




*

ブログ運営

未分類

自己紹介

どら

どら

高校3年生、そう受験生です。カメラやガジェット機器全般、好きです。更新はあまり頻繁にできなくなってしまうと思いますが、役に立つ記事があれば嬉しいです。プロフ画像は、comicoの「ReLIFE」より。

カテゴリー


- Rental Orbit Space -