Androidのカスタムリストビューに、列のようなカスタムカラーバー(グラフではない)を表示したいと思います。AchartEngine を試してみましたが、チャート名の x 値と y 値に加えて、リスト アダプターの Getview メソッドへのコードなどの不要なものがメモリを消費します。
メモリとパフォーマンスの問題なしに、単純なカラー バーをリスト ビュー項目に描画できるソリューションを探しています。私が正確にやりたいことを添付の画像を見つけてください。
これはAchartEngineの私のコードです
public View getView(int position, View convertView, ViewGroup parent) {
// TODO Auto-generated method stub
ViewHolder viewHolder;
if( convertView == null ){
LayoutInflater inflater = ((Activity) context).getLayoutInflater();
convertView = inflater.inflate(R.layout.lea_search_adaptor_item, parent, false);
XYMultipleSeriesDataset dataset = new XYMultipleSeriesDataset();
int[] y = { 60, 50, 55, 80,60};
CategorySeries series = new CategorySeries("");// i don't want title
for (int i = 0; i < y.length; i++) {
series.add("Bar " + (i+1), y[i]);
}
dataset.addSeries(series.toXYSeries());
XYMultipleSeriesRenderer mRenderer = new XYMultipleSeriesRenderer();
mRenderer.setChartTitle("");
mRenderer.setXTitle(""); // i don't want title
mRenderer.setYTitle("");// i don't want title
mRenderer.setAxesColor(Color.GREEN);
mRenderer.setLabelsColor(Color.RED);
// Customize bar 1
XYSeriesRenderer renderer = new XYSeriesRenderer();
renderer.setDisplayChartValues(true);
renderer.setChartValuesSpacing((float) 0.5);
mRenderer.addSeriesRenderer(renderer);
LinearLayout layout = (LinearLayout)convertView.findViewById(R.id.chart);
GraphicalView graphicalView = ChartFactory.getBarChartView(context, dataset, mRenderer, null);
layout.addView(graphicalView);
else
{
viewHolder = (ViewHolder) convertView.getTag();
}
return convertView;
}