У меня есть TableLayout, в котором мне нужно отобразить ImageView и TextView в одной строке.
все view элементы я создаю программно, и при создании ImageVIew указываю размеры 130х130 пикселей, но по понятным причинам на разных устройствах картинки отображаются по-разному. Каким образом можно задать размеры ImageView, чтобы оно корректно отображалось на всех устройствах?
Код создания элементов:
for (int i = 0; i < mainParCount; i++) {
tableRow = new TableRow(getContext());
tableRow.setLayoutParams( new TableRow.LayoutParams(TableRow.LayoutParams.MATCH_PARENT, TableRow.LayoutParams.WRAP_CONTENT));
textView = new TextView(getContext());
textView.setId(1000+i);
int current_text_res_id = getStrResFromId(textView.getId(), "main_par_", "string");
textView.setText(getString(current_text_res_id));
textView.setTextSize(25);
textView.setOnClickListener(this);
textView.setPadding(8,8,8,8);
textView.setGravity(Gravity.CENTER_VERTICAL);
textView.setLines(2);
ImageView imageView = new ImageView(getContext());
imageView.setId(2000+i);
imageView.setLayoutParams(new TableRow.LayoutParams(130, 130));
int current_image_res_id = getImageResFromId(imageView.getId(), "imageicon", "drawable");
imageView.setImageResource(current_image_res_id);
imageView.setScaleType(ImageView.ScaleType.FIT_CENTER);
imageView.setPadding(8, 0,8, 0);
tableRow.addView(imageView);
tableRow.addView(textView);
tableRow.setGravity(Gravity.CENTER);
tableLayout.addView(tableRow, i);
tableLayout.setColumnShrinkable(i, true);
}