case R.id.graphs:
GraphicalView mChartView1 = new Niveau().execute(this);
GraphicalView mChartView2 = // another chartView creation
LinearLayout layout = (LinearLayout) findViewById(R.id.graph);
layout.removeAllViews();
layout.addView(mChartView1, new LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT));
layout.addView(mChartView2, new LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT));
break;
これでうまくいくはずです。あなたのmChartView
に異なるIDを持っているようにしてください - あなたはプログラムではなく膨張XMLレイアウトからそれらを作成した場合、あなたも、プログラムIDを設定する必要があります。
mChartView1.setId(1);
mChartView2.setId(2);
また、RelativeLayout
はおそらくにあなたに多くのカスタマイズを提供しますレイアウトとポジションの期間。次に、レイアウトパラメータの相対的な位置を設定する必要があります。
RelativeLayout layout = (RelativeLayout) findViewById(R.id.graph);
....
RelativeLayout.LayoutParams paramsForChart2 = new RelativeLayout.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT);
paramsForChart2.addRule(RelativeLayout.RIGHT_OF, mChartView1.getId());
layout.addView(mChartView2, paramsForChart2);
あなたはどのような問題に直面していますか?エラーログを共有する –
このコードでは問題はありませんが、たとえば、この行を追加して1つの画面に2つのグラフィックを表示しようとすると、 layout.addView(mChartView、new LayoutParams(LayoutParams.WRAP_CONTENT、LayoutParams .WRAP_CONTENT)); 私はそれを実行すると、アプリケーションが終了します! 1つの画面に複数のグラフィックを表示するにはどうすればいいですか? – Lucia
同じビューを2回追加することはできません。異なるIDを持つ2つの異なるインスタンスが必要です。回答を参照してください – Guillaume