Подгонка всех видов на одну строку таблицы - PullRequest
0 голосов
/ 04 августа 2011

Я пытаюсь поместить TextView в мой TableView, чтобы он не сдвигал блок вращения и другой TextView с экрана. Я попытался изменить layout_width, но это не сработало. Я также попытался изменить layout_width для TableRow, но это тоже не работает. Итак, как мне разместить текст самого левого textView в строке?

<TableLayout android:id="@+id/abilityScoreTable"
android:layout_width="fill_parent" android:layout_height="fill_parent"
xmlns:android="http://schemas.android.com/apk/res/android" android:padding="0dip">
    <TextView android:layout_height="wrap_content"     android:textAppearance="?android:attr/textAppearanceLarge" android:layout_width="wrap_content" android:gravity="center" android:textSize="30dip" android:id="@+id/abilityScoreBannerText" android:text="Ability Scores"></TextView>
    <TableRow android:layout_width="wrap_content" android:gravity="center" android:id="@+id/tableRow1" android:layout_height="wrap_content">
       <TextView android:text="zero" android:id="@+id/StrengthBonusText" android:layout_width="wrap_content" android:layout_height="wrap_content"></TextView>
        <Spinner android:id="@+id/StrengthSpinner" android:layout_width="10px" android:layout_height="wrap_content" android:entries="@array/string_ability_scores"></Spinner>
        <TextView android:layout_width="wrap_content" android:layout_height="wrap_content"
android:textAppearance="?android:attr/textAppearanceLarge" android:id="@+id/StrengthTextView" android:text="Strength"
android:textSize="30dip"></TextView>
    </TableRow>
    <TableRow android:layout_height="wrap_content"
android:layout_width="wrap_content" android:id="@+id/tableRow2" android:gravity="center">
        <Spinner android:layout_height="wrap_content" android:layout_width="wrap_content"
android:id="@+id/dexteritySpinner" android:entries="@array/string_ability_scores"></Spinner>
        <TextView android:id="@+id/textView2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:textAppearance="?android:attr/textAppearanceLarge" android:text="Dexterity" android:textSize="30dip"></TextView>
    </TableRow>
    <TableRow android:layout_width="wrap_content" android:layout_height="wrap_content"
android:entries="@array/string_ability_scores" android:layout_gravity="center"
android:gravity="center" android:id="@+id/TableRow3">
        <Spinner android:id="@+id/ConstitutionSpinner"
android:layout_width="wrap_content" android:layout_height="wrap_content"
android:entries="@array/string_ability_scores"></Spinner>
        <TextView android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textAppearance="?android:attr/textAppearanceLarge"
android:text="Constitution" android:textSize="30dip"
android:id="@+id/ConstitutionTextView"></TextView>
    </TableRow>
    <TableRow android:layout_height="wrap_content"
android:layout_width="wrap_content" android:id="@+id/tableRow3" android:gravity="center">
        <Spinner android:layout_height="wrap_content"
android:id="@+id/intelligenceSpinner"
android:layout_width="wrap_content"
android:entries="@array/string_ability_scores"></Spinner>
        <TextView android:id="@+id/textView1"
android:layout_width="wrap_content" android:layout_height="wrap_content"
android:textAppearance="?android:attr/textAppearanceLarge"
android:text="Intelligence" android:textSize="30dip"></TextView>
    </TableRow>
    <TableRow android:layout_height="wrap_content"
android:layout_width="wrap_content" android:id="@+id/tableRow4"
android:gravity="center">
        <Spinner android:layout_height="wrap_content"
android:id="@+id/WisdomSpinner" android:layout_width="wrap_content"
android:entries="@array/string_ability_scores"></Spinner>
        <TextView android:id="@+id/textView3"
android:layout_width="wrap_content" android:layout_height="wrap_content"
android:textAppearance="?android:attr/textAppearanceLarge" android:text="Wisdom"
android:textSize="30dip"></TextView>
    </TableRow>
    <TableRow android:layout_height="wrap_content"
android:layout_width="wrap_content" android:id="@+id/tableRow5"
android:gravity="center">
        <Spinner android:layout_height="wrap_content"
android:id="@+id/CharismaSpinner" android:layout_width="wrap_content"
android:entries="@array/string_ability_scores"></Spinner>
        <TextView android:id="@+id/textView4"
android:layout_width="wrap_content" android:layout_height="wrap_content"
android:textAppearance="?android:attr/textAppearanceLarge"
android:text="Charisma" android:textSize="30dip"></TextView>
    </TableRow>
</TableLayout>

В настоящее время это выглядит так:

Layout with TextView off-screen

На самом верхнем счетчике должно быть число слева. Я пытаюсь прижать его к экрану, и все три подходят.

Ответы [ 2 ]

0 голосов
/ 04 августа 2011

Я не уверен, что вы хотите, в любом случае, проверьте это и скажите мне, это то, что вы пытаетесь.

enter image description here

, если это так, то здесь xml.

<TableRow android:id="@+id/tableRow1">
    <TextView android:text="zero" android:id="@+id/StrengthBonusText"></TextView>
    <Spinner android:id="@+id/StrengthSpinner" />
    <TextView android:id="@+id/StrengthTextView"
        android:textAppearance="?android:attr/textAppearanceLarge"
        android:text="Strength" android:textSize="30dip" />
</TableRow>

<TableRow android:id="@+id/tableRow2">
    <View android:visibility="invisible" android:layout_height="0dip" />
    <Spinner android:id="@+id/dexteritySpinner" />
    <TextView android:id="@+id/textView2" android:textAppearance="?android:attr/textAppearanceLarge"
        android:text="Dexterity" android:textSize="30dip" />
</TableRow>

<TableRow android:id="@+id/TableRow3">
    <View android:visibility="invisible" android:layout_height="0dip" />
    <Spinner android:id="@+id/ConstitutionSpinner"></Spinner>
    <TextView android:id="@+id/ConstitutionTextView"
        android:textAppearance="?android:attr/textAppearanceLarge"
        android:text="Constitution" android:textSize="30dip"></TextView>
</TableRow>
<TableRow android:id="@+id/tableRow3">
    <View android:visibility="invisible" android:layout_height="0dip"/>
    <Spinner android:id="@+id/intelligenceSpinner"></Spinner>
    <TextView android:id="@+id/textView1" android:textAppearance="?android:attr/textAppearanceLarge"
        android:text="Intelligence" android:textSize="30dip"></TextView>
</TableRow>
<TableRow android:id="@+id/tableRow4">
    <View android:visibility="invisible" android:layout_height="0dip"/>
    <Spinner android:id="@+id/WisdomSpinner"></Spinner>
    <TextView android:id="@+id/textView3" android:textAppearance="?android:attr/textAppearanceLarge"
        android:text="Wisdom" android:textSize="30dip"></TextView>
</TableRow>
<TableRow android:id="@+id/tableRow5">
    <View android:visibility="invisible" android:layout_height="0dip"/>
    <Spinner android:id="@+id/CharismaSpinner"></Spinner>
    <TextView android:id="@+id/textView4" android:textAppearance="?android:attr/textAppearanceLarge"
        android:text="Charisma" android:textSize="30dip"></TextView>
</TableRow>

0 голосов
/ 04 августа 2011

Вы пытались использовать относительный макет или это просто не вариант?Также я заметил, что вы смешиваете px и dip - это обычно не рекомендуется

...