別のrelativelayoutの後に、重複することなく新しいrelativelayoutをプログラムで追加しようとしました。
LinearLayout ll = (LinearLayout)findViewById(R.id.mainLL);
ll.setOrientation(LinearLayout.VERTICAL);
RelativeLayout rl = new RelativeLayout(MainActivity.this);
rl.setId(2);
RelativeLayout.LayoutParams lp = new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.MATCH_PARENT, 50);//RelativeLayout.LayoutParams.WRAP_CONTENT
ll.addView(rl, lp);
TextView iTextView = new TextView(this);
iTextView.setTextSize(pthTextFontSize);
iTextView.setText("ok");
rl.addView(iTextView);
// finish adding the first relativelayout.
RelativeLayout rl2 = new RelativeLayout(MainActivity.this);
RelativeLayout.LayoutParams lp2 = new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.MATCH_PARENT, 50);
lp2.addRule(RelativeLayout.ALIGN_PARENT_LEFT);
lp2.addRule(RelativeLayout.BELOW, rl.getId());
rl2.setLayoutParams(lp2);
ll.addView(rl2);
TextView iTextView2 = new TextView(this);
iTextView2.setTextSize(pthTextFontSize);
iTextView2.setText("abc");
rl.addView(iTextView2);
ただし、「ok」と「abc」という単語が重複しています。誰が何が間違っているかを確認するのを手伝ってくれますか? 助けてくれてありがとう。
要するに:リニアレイアウトがあります(フルスクリーンを占有)。次に、2 つの linearlayouts を追加しようとしました。相対レイアウト "rl2" の親は "ll" で、"ll" の ALIGN_PARENT_LEFT と "rl1" の下に "rl2" を配置しようとしましたが、それらは重なっています。