Я пытаюсь сделать чат с 2 TextViews и 1 ImageView на Tabelrow. Я использую relativeLayout для их упорядочивания, но когда я запускаю приложение, все помещается в верхнем правом углу друг над другом ... Я пробирался по интернету, но не мог найти ничего, чтобы помочь мне. Может ли кто-нибудь помочь? возможно, дайте мне какие-то указания?relativelayout not rendering правильно
TableRow trr = new TableRow(this);
trr.setLayoutParams(new TableLayout.LayoutParams(TableLayout.LayoutParams.MATCH_PARENT, TableLayout.LayoutParams.WRAP_CONTENT, 1.0f));
tl.addView(trr);
RelativeLayout rl = new RelativeLayout(this);
TableRow.LayoutParams trrllp = new TableRow.LayoutParams(TableRow.LayoutParams.MATCH_PARENT, TableRow.LayoutParams.WRAP_CONTENT, 10);
trrllp.gravity= Gravity.CENTER;
rl.setLayoutParams(trrllp);
trr.addView(rl);
ImageView ivSvart = new ImageView(this);
TextView tvchat = new TextView(this);
tvchat.setText(ChatH.get(i)[2]);
String s = ChatH.get(i)[1];
Long l = Long.valueOf(s);
time = new Date(l*1000);
TextView tvTimeDate = new TextView(this);
tvTimeDate.setText(time + ", " + navn);
if(b_ID.equals(MinID)){
RelativeLayout.LayoutParams rltvlp = new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.MATCH_PARENT-70, RelativeLayout.LayoutParams.WRAP_CONTENT);
rltvlp.addRule(RelativeLayout.ALIGN_PARENT_RIGHT);
rltvlp.addRule(RelativeLayout.ALIGN_PARENT_TOP);
rltvlp.setMargins(0, 5, 100, 0);
tvchat.setLayoutParams(rltvlp);
tvchat.setTextColor(0xFFFEFEFE);
tvchat.setTextSize(18);
rl.addView(tvchat);
RelativeLayout.LayoutParams rlivlp = new RelativeLayout.LayoutParams(80,80);
rlivlp.addRule(RelativeLayout.ABOVE, tvTimeDate.getId());
rlivlp.addRule(RelativeLayout.ALIGN_PARENT_RIGHT);
rlivlp.setMargins(0, 0, 10, 10);
ivSvart.setLayoutParams(rlivlp);
rl.addView(ivSvart);
RelativeLayout.LayoutParams rltvlp2 = new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.WRAP_CONTENT, RelativeLayout.LayoutParams.WRAP_CONTENT);
rltvlp2.setMargins(0, 5, 15, 0);
rltvlp2.addRule(RelativeLayout.BELOW, tvchat.getId());
rltvlp2.addRule(RelativeLayout.LEFT_OF, ivSvart.getId());
tvTimeDate.setLayoutParams(rltvlp2);
rl.addView(tvTimeDate);
}
Я пробовал несколько способов, но пока не удалось.
Спасибо, что ответили. Но это не сработало для меня. Должен ли основной родитель быть относительным или просто родителем TabelLayout? – user3762929