ボタンのクリック時に相対レイアウトにカスタム レイアウトを追加する必要があります。再度別のクリックで、前の膨張したレイアウトの上に別の値を持つ同じレイアウトを追加します。と、このように続きます。リストビューを使用したくありません。
カスタムレイアウトを動的に追加できますが、以前に追加したものの上に配置する方法.
ADD ボタンをクリックすると、ROW 1、ROW 2 のように新しい行が xml の相対的なレイアウトに追加され、これは ROW 3、ROW 4 などに続きます。
ボタンのクリック時に相対レイアウトにカスタム レイアウトを追加する必要があります。再度別のクリックで、前の膨張したレイアウトの上に別の値を持つ同じレイアウトを追加します。と、このように続きます。リストビューを使用したくありません。
カスタムレイアウトを動的に追加できますが、以前に追加したものの上に配置する方法.
ADD ボタンをクリックすると、ROW 1、ROW 2 のように新しい行が xml の相対的なレイアウトに追加され、これは ROW 3、ROW 4 などに続きます。
RelativeLayout.LayoutParamsクラスのaddRuleメソッドを使用できます。例えば:
RelativeLayout.Layoutparams params = (RelativeLayout.LayoutParams)button.getLayoutParams();
params.addRule(RelativeLayout.ALIGN_PARENT_RIGHT);
params.addRule(RelativeLayout.LEFT_OF, R.id.id_to_be_left_of);
button.setLayoutParams(params);
これを行うと、レイアウトxmlファイルで設定するすべてのパラメーターをプログラムで設定できます。
ボタン クリック イベントで次のコードを追加します。
LinearLayout linearLayout=(LinearLayout) findViewById(R.id.layout);
LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.WRAP_CONTENT, LinearLayout.LayoutParams.WRAP_CONTENT);
LinearLayout layout=new LinearLayout(getApplicationContext());
LinearLayout.LayoutParams params1 = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.WRAP_CONTENT, LinearLayout.LayoutParams.WRAP_CONTENT);
layout.setOrientation(LinearLayout.VERTICAL);
layout.setLayoutParams(params);
Button button1=new Button(getApplicationContext());
button1.setLayoutParams(params1);
button1.setText("button");
layout.addView(button1);
linearLayout.addView(layout);
XML ファイルで ID @+id/layout と向き Vertical を持つレイアウトを定義します。クリック イベントごとにボタン レイアウトが追加されていることがわかります。