2

アプリケーションでグラフィックを作成しようとしていますが、AchartEngine API機能しません。

graphic誰かが代わりにビューを持つ方法を私に説明できますIntentか?

デモコードでIntentは、ビューではなく、によってのみ発生します。

編集:2つのオプションを同時にテストしようとしました:ボタンのあるlinearLayoutがあります:

<LinearLayout android:id="@+id/list_infos_layout_stat" android:orientation="horizontal" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_weight="1" >

<Button 
    android:id="@+id/list_infos_bouton_stats"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="statistiques"
/>

ChartFactory.getLineChartIntent(..)ボタンを押すと、メソッドによって新しいアクティビティが作成され、うまく機能します。

同じLinearLayoutに、ChartFactory.getLineChartViewメソッドによって返されるビューを配置しました。ボタンの右側にグラフィックがあります。しかし、ボタンを外しても何もありません...

View graphique = new ReponsesChart().getView(contexte);
        if (graphique !=null){
            LinearLayout layout = (LinearLayout)convertView.findViewById(R.id.list_infos_layout_stat);
            layout.addView(graphique, new LayoutParams(LayoutParams.FILL_PARENT,LayoutParams.FILL_PARENT));
        } else {
            Log.d("Infos", "GRAPHIQUE NULL");
        }

編集2:ビューを画面の幅でレイアウトに追加するときに、親の塗りつぶしプロパティを置き換えることで修正されました

4

2 に答える 2

3

ChartFactoryクラスには、次のように使用できるいくつかのメソッドがあります。

    GraphicalView gView=ChartFactory.getDoughnutChartView(context,data,renderer);

折れ線グラフや棒グラフなどの他のグラフタイプにも同様のものがあります。次に、次のように呼び出すことができます。

    setContentView(gView);

AChartEngineのドキュメントをダウンロードしてください。そこから簡単に見つけることができます。

于 2011-08-02T10:00:21.630 に答える
0

ビットマップに書き込むものは役に立ちますか?私は私のコードのいくつかで以下を使用します:

final XYMultipleSeriesRenderer multipleRenderer = new XYMultipleSeriesRenderer();
final XYSeriesRenderer renderer = new XYSeriesRenderer();
multipleRenderer.addSeriesRenderer(renderer);

final XYMultipleSeriesDataset dataset = final XYMultipleSeriesDataset dataset = ...

final Bitmap image1 = Bitmap.createBitmap(WIDTH, HEIGHT, Bitmap.Config.ARGB_8888);    
final TimeChart tc = new TimeChart(dataset, multipleRenderer);

final Canvas canvas = new Canvas(image1);
tc.draw(canvas, 0, 0, WIDTH, HEIGHT, paint);
final Bitmap image = Bitmap.createBitmap(image1, 0, 0, WIDTH, HEIGHT);

multipleRenderとデータセットの初期化に関連する多くのコードを切り取ったことに注意してください

于 2011-08-02T09:49:32.243 に答える