Largeur du bouton dans Android TableLayout
J'ai un TableLayout avec un bouton en bas de page. Mon problème est que le bouton s'étend jusqu'à remplir la totalité de la largeur de la colonne, même si je n'ai pas envie que large.
Le XML ressemble à ceci:
<?xml version="1.0" encoding="utf-8"?>
<TableLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:stretchColumns="*"
android:layout_width="wrap_content"
android:layout_height="wrap_content">
<TableRow android:layout_height="wrap_content"
android:layout_width="fill_parent">
<CheckBox android:id="@+id/check1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Some text 1"/>
<CheckBox android:id="@+id/check2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Some text 1"/>
</TableRow>
<TableRow android:layout_height="wrap_content"
android:layout_width="fill_parent">
<CheckBox android:id="@+id/check3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Even some more text 2"/>
<CheckBox android:id="@+id/check4"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Even some more text 2"/>
</TableRow>
<TableRow android:layout_height="wrap_content"
android:layout_width="fill_parent">
<CheckBox android:id="@+id/check5"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="An even longer line of text 3"/>
<CheckBox android:id="@+id/check6"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Another longer line of text 3"/>
</TableRow>
<EditText
android:id="@+id/myEditText1"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:inputType="textMultiLine"
android:singleLine="false"
android:text="Enter some text"
/>
<TableRow>
<Button android:id="@+id/SaveButton"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Save">
</Button>
</TableRow>
</TableLayout>
Même si j'ai mis un explicite de la largeur sur le bouton, il l'ignore. Par exemple, si j'ai:
<Button android:id="@+id/SaveButton"
android:layout_width="100sp"
android:layout_height="100sp"
android:text="Save">
</Button>
... le bouton est plus haut, mais la largeur s'étend encore à remplir la colonne.
J'aimerais que le bouton soit environ la moitié de sa largeur, au centre de la colonne. Merci d'avance!!
source d'informationauteur Peter Nelson
Vous devez vous connecter pour publier un commentaire.
@mbaird est droit:
android:stretchColumns="*"
est toujours à l'étirement de la largeur de la colonne. Cependant, vous pouvez toujours obtenir le comportement que vous voulez à l'intérieur de la colonne en mettant un FrameLayout dans la colonne qui s'étend sur la largeur de la colonne, puis de mettre votre bouton à l'intérieur. Ensuite, vous pouvez faire la taille de la touche cependant que vous aimez et centre dans la FrameLayout:Je suis sûr que
android:stretchColumns="*"
va toujours au bouton à être tendu comme ça. Avez-vous envisagé de placer le bouton à l'extérieur de la TableLayout?À partir de la documentation:
Les enfants d'un TableLayout ne peut pas spécifier le layout_width attribut. La largeur est toujours MATCH_PARENT. Cependant, la layout_height attribut peut être défini par un enfant; valeur par défaut est WRAP_CONTENT