TextView внутри TableRow не отображает текст должным образом в Android - PullRequest
1 голос
/ 25 ноября 2011

Я пишу простое приложение для Android, которому нужен текст, который должен быть написан справа налево. Поэтому я использовал TableRow следующим образом:

    <?xml version="1.0" encoding="utf-8"?>
<TableLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:stretchColumns="1">

    <TableRow>
        <TextView
        android:id="@+id/ada"
            android:layout_height="wrap_content"
            android:layout_width="wrap_content"
            android:layout_column="1"
            android:text="Open..."
            android:padding="3dip" />

    </TableRow>

    <TableRow>
        <TextView
        android:id="@+id/myview"
        android:layout_marginRight="34dip"
        android:layout_marginLeft="6dip"
        android:layout_height="100dip"
        android:layout_width="wrap_content"
        android:layout_column="1"
            android:text="Ctrl-O"
            android:gravity="right"
             />

    </TableRow>


</TableLayout>

А внутри деятельности я написал:

 TextView myView=(TextView)findViewById(R.id.myview);
  myView.setText("welcome 1 ");

Работает хорошо, а «welcome 1» располагается справа (по желанию). Но когда длина текста увеличивается, TextView не отображает текст должным образом, и конец каждой строки выходит за пределы экрана. Вот скриншот, если я изменю код выше следующим образом:

myView.setText("welcome 1  welcome 2  welcome 3  welcome 4  welcome 5 welcome 6  welcome 7 welcome 8 welcome 9 welcome 10 ");

enter image description here

Буду признателен за вашу помощь.

1 Ответ

1 голос
/ 25 ноября 2011

Ваш TextView выталкивается вправо вашим атрибутом android:layout_marginLeft. Поля находятся за пределами представления, которое вы установили, чтобы обернуть весь ваш контент. Вы, вероятно, хотите использовать android:layout_paddingLeft вместо этого. Заполнение размещается внутри самого представления, поэтому оно не добавляет места, занимаемого в родительском элементе.

...