0
私はちょうどアンドロイドのプログラミングを始め、クイックコードを書いて、自分が望むことをすることができませんでした。基本的には、2つのテキストボックスと特定のレイアウトで表示されたイメージを持つダイアログボックスが表示されます。私は次のコードを持っています:相対的なレイアウトがプログラムで動作しない
AlertDialog.Builder dialog = new AlertDialog.Builder(this);
RelativeLayout dialogItems = new RelativeLayout(this);
EditText itemTitle = new EditText(this);
EditText itemBody = new EditText(this);
ImageView dIcon = new ImageView(this);
itemTitle.setText("Note Title");
itemBody.setText("Note Details");
dIcon.setImageResource(R.drawable.create);
final RelativeLayout.LayoutParams imageParam = new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.WRAP_CONTENT, RelativeLayout.LayoutParams.WRAP_CONTENT);
imageParam.addRule(RelativeLayout.ALIGN_PARENT_LEFT);
imageParam.addRule(RelativeLayout.ALIGN_PARENT_TOP);
dIcon.setLayoutParams(imageParam);
dialogItems.addView(dIcon, imageParam);
final RelativeLayout.LayoutParams titleParam = new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.WRAP_CONTENT, RelativeLayout.LayoutParams.WRAP_CONTENT);
titleParam.addRule(RelativeLayout.RIGHT_OF, dIcon.getId());
titleParam.addRule(RelativeLayout.ALIGN_PARENT_TOP);
itemTitle.setLayoutParams(titleParam);
dialogItems.addView(itemTitle, titleParam);
final RelativeLayout.LayoutParams bodyParam = new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.WRAP_CONTENT, RelativeLayout.LayoutParams.WRAP_CONTENT);
bodyParam.addRule(RelativeLayout.ALIGN_LEFT, itemTitle.getId());
bodyParam.addRule(RelativeLayout.BELOW, itemTitle.getId());
itemBody.setLayoutParams(bodyParam);
dialogItems.addView(itemBody, bodyParam);
dialog.setView(dialogItems);
dialog.show();
これはなぜ動作しないのですか?問題は、ポップアップが表示されますが、すべてのアイテムが左上に重なるだけです。ありがとう
P.S.私は他の投稿や質問をチェックしていて、答えがうまくいきません!ですから私を別の質問にリンクさせるのではなく、自分のコードを修正してください。
私はそれが自動的に項目に自分のidを与えるだろうと仮定しました。:P – Randomman159