Необходимо, чтобы TextView появился рядом с EditBox в той же строке TableLayout - PullRequest
0 голосов
/ 07 июня 2011

Я просмотрел форумы, и Google пытается выяснить, что я здесь делаю не так.Я хочу, чтобы TextView появился перед EditText в той же строке.Я попытался сделать это с помощью TableLayout, но в результате EditText отодвигается от экрана в портретной ориентации, и вы едва можете увидеть его в альбомной ориентации.Вот мой код:

    <?xml version="1.0" encoding="utf-8"?>

<Button android:layout_width="wrap_content"
    android:layout_alignParentTop="true" android:layout_alignParentRight="true"
    android:layout_marginBottom="20dip" android:layout_height="wrap_content"
    android:id="@+id/about_button" android:text="@string/about_label" />

    <TextView android:text="@string/deck_size_label"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:layout_marginBottom="20dip" android:textSize="24.5sp"
    android:layout_alignParentLeft="true" 
    android:layout_below="@id/about_button"/> 

    <EditText
    android:id="@+id/deck_size_textbox" android:inputType="number"
    android:layout_width="fill_parent" android:layout_height="wrap_content"
    android:layout_alignParentRight="true"
    android:layout_toRightOf="@id/about_button" /> 
->

Любая помощь с этим будет принята с благодарностью.

Ответы [ 2 ]

0 голосов
/ 07 июня 2011

Если текст в вашем TextView слишком широкий, он вытеснит EditText с экрана. Вы может заставить TextView и EditText разделить доступную ширину поровну, используя layout_weight, например:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:orientation="horizontal"
    >
    <TextView
        android:text="@string/land_count_label"
        android:layout_height="wrap_content"
        android:layout_width="0dp"
        android:layout_weight="1"
        android:gravity="left"
        android:layout_marginBottom="20dip"
        android:textSize="24.5sp"
        />
    <EditText
        android:id="@+id/land_count_textbox"
        android:inputType="number"
        android:layout_width="0dp"
        android:layout_weight="1"
        android:layout_height="wrap_content"
        />
</LinearLayout>

Возможно, вы получите лучший контроль, используя RelativeLayout.

0 голосов
/ 07 июня 2011

Вы пробовали RelativeLayout? Если вы определяете RelativeLayout с горизонтально ориентированными LinearLayouts внутри него (для строк), вы можете определить атрибуты XML, такие как:

android:layout_toRightOf="@id/idoftextviewhere"

Если он все еще выталкивает поле EditText с экрана, попробуйте также реализовать:

android:layout_alignParentRight
...