TableRow с двумя текстовыми представлениями в отдельной строке

#java #android

#java #Android

Вопрос:

У меня есть следующий код:

 TextView name = new TextView(this);
                          name.setText(venues.get(j).name);
                          name.setLayoutParams(new LayoutParams(
                                    LayoutParams.FILL_PARENT,
                                    LayoutParams.WRAP_CONTENT));

                          TextView address = new TextView(this);
                          address.setText(venues.get(j).getFullAddress());
                          address.setLayoutParams(new LayoutParams(
                                        LayoutParams.FILL_PARENT,
                                        LayoutParams.WRAP_CONTENT));
                          /* Add Button to row. */
                          tr.addView(name);
                          tr.addView(address);
  

И теперь это дает мне макет, подобный этому:

введите описание изображения здесь

Я хочу, чтобы TextView был в отдельных строках. Как мне это сделать?

Ответ №1:

Прежде всего, не используйте LayoutParams для представлений, которые собираются в TableRow … используйте TableRow.Параметры компоновки.

Во-вторых (пожалуйста, скажите мне, если я неправильно понял ваш вопрос), если вы хотите, чтобы ваши edittexts отображались в разных строках… это означает, что вы хотите, чтобы они находились в разных строках. Другими словами, не помещайте их в один и тот же TableRow. Вы можете поместить их в отдельные TableRows или использовать LinearLayout.

Ответ №2:

Попробуйте добавить addr к другому TableRow .

 TextView name = new TextView(this);
TextView addr = new TextView(this);

name.setText("Name");
addr.setText("Addr");

TableRow tableRow1 = (TableRow) findViewById(R.id.tableRow1);
TableRow tableRow2 = (TableRow) findViewById(R.id.tableRow2);

tableRow1.addView(name);
tableRow2.addView(addr);