Ответ 1
Атрибут layout_weight
определяет, сколько из оставшегося пробела предоставляется каждой из ваших кнопок. Если ваши кнопки занимают различное пространство для начала, тогда каждому из них будет сначала задано пространство, которое они просят, а затем любое оставшееся пространство будет разделено между ними, а это значит, что у вас не будет точного 50/50 разделов.
Вы можете обойти это поведение, сначала установив layout_width="0px"
(сохраняя layout_weight
как они есть), и полагаясь на 50%, достаточно места для отображения каждой кнопки.