Выравнивание в Listview

#android #android-layout #listview

#Android #android-макет #listview

Вопрос:

это мой код

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

        <ImageView
            android:id="@ id/img"
            android:layout_width="50dp"
            android:layout_height="50dp" />

        <TextView
            android:id="@ id/txt"
            android:layout_width="wrap_content"
            android:layout_height="50dp"
            android:gravity="center" />

    </TableRow>
</TableLayout>
  

и экспорт моего кода, как на этой картинке

введите описание изображения здесь

Теперь я хочу переместить свой текст справа от списка, как я могу это сделать?

Комментарии:

1. Измените значение вашего TextView to right . Вы также можете попробовать layout_marginLeft

Ответ №1:

Используйте RelativeLayout

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

        <ImageView
            android:id="@ id/img"
            android:layout_width="50dp"
            android:layout_height="50dp" />

        <LinearLayout
            android:layout_width="match_parent"
            android:orientation="vertical"
            android:layout_height="50dp"
            android:layout_toRightOf="@id/img"
            android:layout_alignParentRight="true">

            <TextView
                android:id="@ id/txt"
                android:layout_width="match_parent"
                android:layout_height="50dp"
                android:text="Hola mundo"
                android:gravity="center_vertical|right" />

        </LinearLayout>

</RelativeLayout>
  

Ответ №2:

TextView Вероятно, вам следует изменить это:

 <TextView
    android:id="@ id/txt"
    android:layout_width="match_parent"
    android:layout_height="50dp"
    android:gravity="right" />
  

Это устанавливает ширину на весь размер строки (в противном случае атрибут gravity не будет работать — в этом случае).

Ответ №3:

Измените атрибут gravity на layout_gravity в вашем TextView «gravity» указывает, как выровнять текст по оси x и / или y представления, когда текст меньше представления, а «layout_gravity» определяет, как дочерний вид должен быть расположен как по осям X, так и по осям Y, в пределахего окружающий макет.

Также измените его значение с «center» на «right».

  <TextView
        android:id="@ id/txt"
        android:layout_width="wrap_content"
        android:layout_height="50dp"
        android:layout_gravity="right" />
  

Комментарии:

1. я меняю свой код,,, но не вносит никаких изменений в мой экспорт

2. @AliSaravani также изменяет строку таблицы: <TableRow android:layout_width="match_parent" android:layout_height="wrap_content">

Ответ №4:

Установите ширину строки таблицы равной match_parent и установите android:layout_gravity=»right» в textview для выравнивания по правому краю строки таблицы

Попробуйте использовать веса

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

        <ImageView
            android:id="@ id/img"
            android:layout_weight="0.1"
            android:src="@drawable/chuck_desert"
            android:layout_width="50dp"
            android:layout_height="50dp" />

        <TextView
            android:id="@ id/txt"
            android:text="Test"
            android:layout_weight="0.9"
            android:layout_width="wrap_content"
            android:layout_height="50dp"
            android:gravity="center_vertical|right" />

    </TableRow>
</TableLayout>
  

Комментарии:

1. <TableRow android:layout_width=»match_parent» android:layout_gravity=»right»> но не меняется при моем экспорте

2. установите android:layout_gravity=»right» для textview

3. <TableRow android:layout_width=»match_parent»> <TextView android: id =»@ id /txt» android:layout_width=»wrap_content» android:layout_height=»50dp» android: gravity=»center» android:layout_gravity=»right»/> но снова не работает