Se o seu widget for um botão:
<LinearLayout android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:weightSum="2"
android:orientation="horizontal">
<Button android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="somebutton"/>
<TextView android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"/>
</LinearLayout>
Suponho que você queira que seu widget ocupe uma metade e outro widget ocupe a outra metade. O truque é usar um LinearLayout, configurando layout_width="fill_parent"
em ambos os widgets e configurando layout_weight
com o mesmo valor em ambos os widgets também. Se houver dois widgets, ambos com o mesmo peso, o LinearLayout dividirá a largura entre os dois widgets.
Usando layout de restrições
Se você estiver tendo problemas para alterá-lo para uma porcentagem, veja esta resposta .
XML
fonte
defina a largura como 0 dp para ter certeza de que seu tamanho é exatamente igual ao seu peso. Isso garantirá que mesmo se o conteúdo das visualizações filhas ficar maior, elas ainda serão limitadas exatamente à metade (de acordo com seu peso)
fonte
Outra maneira para um único item no centro, que preenche metade da tela:
fonte
fonte