Используете ли вы android: width = "wrap_content" в макете XML для определения ширины последнего столбца?
Редактировать: Я думаю, я только что понял, у вас есть представление списка, которое содержит таблицу, и вы хотите, чтобы все строки представления списка имели одинаковую длину для последней строки таблицы. Правильно?
Сейчас я могу думать только об одном, очень нелегком решении, и оно включает просмотр всех строк перед построением представления списка.
Общая логика будет выглядеть следующим образом:
Я собираюсь предположить, что вы получаете все строки из массива, давайте назовем его данными.
Установите глобальную переменную с плавающей точкой для представления самой длинной строки, которую вы имеете, давайте назовем ее maxLength.
Создайте текстовое представление (давайте назовем его invisibleText) в макете, которое не будет видно, вы можете сделать это, установив
android:visibility="gone"
Тогда:
int size = data.length;
maxLength = 0.0f;
for(int i = 0;i<size;i++){
invisibleText.setText(data[i]);
float thisLength = invisibleText.getTextSize();
if(thisLength>maxLength) maxLength = thisLength;
}
В вашем конструкторе представления списка:
TextView text = (TextView)findViewById(R.id.the_text_view_you_want);
text.setText(data[position]);
text.setWidth(maxLength)
Столбцы таблицы должны использовать android: width = "wrap_content"
Я не тестировал этот код, но он должен работать, я делал подобные вещи раньше.