Вертикальное центрирование большого текста в кнопках Android - PullRequest
6 голосов
/ 14 декабря 2011

Android, кнопка просмотра.Размер кнопки - 38x38dp, размер текста - 20dp (текст всего на один символ +).Гравитация установлена ​​в центр | center_vertical.

Текст НЕ центрируется по вертикали.Согласно внутреннему учету Android, текст слишком велик для указанного размера кнопки, поэтому текст помещается так, чтобы его верхняя часть была выровнена по верхнему отступу, а его нижняя часть обрезана.Это не то, что я хочу;Я хочу, чтобы текст был равномерно обрезан сверху и снизу.Другими словами, вертикально по центру.Символ «плюс», так как он занимает меньше, чем полноразмерная ячейка, не будет страдать от этого.

Я установил Gravity, а не Layout gravity.Я знаю разницу.

Есть идеи, как заставить вертикальное центрирование работать в таких условиях, кроме переопределения draw ()?

1 Ответ

5 голосов
/ 20 апреля 2012

Попробуйте добавить android: includeFontPadding = "false" в представление Button.

Некоторые предлагали добавить android: baselineAligned = "false" в контейнер для подобных проблем, но он ничего не сделал для меня.

...