特定のビューをrelativeLayoutに動的に追加するこのコードがあります。問題は、コードで上記の機能を使用しているにもかかわらず、すべてのビューが互いに重なっているということです。
date=(EditText)findViewById(R.id.Date);
save=(Button)findViewById(R.id.Save);
save.setText("Confirm Purchase");
container=(RelativeLayout)findViewById(R.id.container);
items[no]=new AutoCompleteTextView(this);
RelativeLayout.LayoutParams p1=new RelativeLayout.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);
p1.addRule(RelativeLayout.ALIGN_PARENT_START);
items[no].setId(id++);
container.addView(items[no],p1);
items[no].setHint("Enter Item");
quants[no]=new EditText(this);
RelativeLayout.LayoutParams p2=new RelativeLayout.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);
p2.addRule(RelativeLayout.RIGHT_OF, items[no].getId());
quants[no].setId(id++);
container.addView(quants[no],p2);
quants[no].setHint("Quantity");
rates[no]=new EditText(this);
RelativeLayout.LayoutParams p3=new RelativeLayout.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);
p3.addRule(RelativeLayout.RIGHT_OF, quants[no].getId());
rates[no].setId(id++);
container.addView(rates[no], p3);
rates[no].setHint("Rates");
totals[no]=new TextView(this);
RelativeLayout.LayoutParams p4=new RelativeLayout.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);
p4.addRule(RelativeLayout.RIGHT_OF, rates[no].getId());
container.addView(totals[no], p4);
totals[no].setText("Amount");
PlZ は私に XML でそれを行うように頼まないでください。長いコードの一部です。
XML:
<ScrollView android:layout_width="match_parent"
android:layout_height="fill_parent"
android:layout_weight="2">
<RelativeLayout android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:id="@+id/container">
</RelativeLayout>
</ScrollView>