Как сказал CommonsWare, вместо настройки ширины следует рассмотреть возможность установки параметра веса кнопок для достижения гибкой компоновки.
Если вы хотите достичь этого программно (т. Е. В коде, а не в макете XML), вы можете использовать метод кнопки setLayoutParams
. Я не проверял это, но что-то вроде этого должно работать:
// outside of loop
LayoutParams p = new LinearLayout.LayoutParams(
LayoutParams.MATCH_PARENT,
LayoutParams.MATCH_PARENT,
1.0
);
....
// enter loop
....
button[i].setLayoutParams(p);
В этом примере 1.0
представляет вес. Два других параметра представляют layout_width
и layout_height
параметр.
А если серьезно, я не могу себе представить, что раскладка с 36 кнопками очень удобна для пользователя: -)