Вы должны посмотреть на унаследованные методы из TextView и View of Button:
setPadding(int left, int top, int right, int bottom)
чтобы назвать одно ... вы также можете изменить макетпараметры объекта кнопки, который дает вам доступ ко всем обычно доступным атрибутам xml. В общем, вы можете делать все программно, как в XML.
Если этого недостаточно, вы можете расширить класс Button и переопределить метод onDraw, чтобы изменить способ, которым Android рисует вашу кнопку
EDIT:
Может быть, вы можете добавить тему xml, очень похожую на эту тему: Как программно установить атрибут стиля в представлении
а затем в нем установить
а тему добавить программно к кнопке?
Я не очень много работал с темами, поэтому не могу засвидетельствовать, сработает ли это определенно