Невозможно динамически центрировать TextView в TableRow

Я динамически создал TableRow с ImageButton и TextView. Я установил гравитацию в TableRow, используя TableRow.setGravity(Gravity.CENTER_VERTICAL);

Затем в моем TextView я использую этот код

TextView tv = new TextView(this);
tv.setText(functie[beschrijving]);
tv.setWidth(300);
//tv.setHeight(60);
tv.setGravity(Gravity.CENTER_VERTICAL);
tv.setPadding(15, 0, 10, 0);
tr.addView(tv);

Когда я делаю это, я получаю этот результат. Это не совсем по центру, это выглядит как текст прямо под центром. Кто-нибудь знает, как поставить текст полностью по центру?

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


person Hannelore    schedule 18.04.2011    source источник


Ответы (2)


Привет, я думаю, вам следует использовать следующее свойство родительского макета android:layout_centerVertical="true"

person Anup Rojekar    schedule 18.04.2011
comment
Вы имеете в виду сам TableLayout? Потому что я делаю это также в коде Java. - person Hannelore; 18.04.2011

возможно, этот код поможет вам.

android.widget.TableRow.LayoutParams params = new android.widget.TableRow.LayoutParams();
params.gravity = Gravity.CENTER_VERTICAL;
tr.addView(tv, params);

Но я не уверен.

person Pasha    schedule 18.04.2011
comment
Не помогло, убрал несколько строк верхних пикселей оранжевой рамки. - person Hannelore; 18.04.2011