Вопрос

Я начал с Реализация Fedor's ListView. Анкет Вот XML для моего элемента ListView:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="wrap_content">
<ImageView
      android:id="@+id/image"
      android:layout_width="50dip"
      android:layout_height="50dip" android:src="@drawable/stub" android:scaleType="centerCrop"/>
<TextView
      android:id="@+id/name"
      android:layout_width="0px"
      android:layout_height="0px"
      android:layout_weight="0" android:textSize="20dip" android:layout_marginLeft="10dip"/>
<TextView
      android:id="@+id/address"
      android:layout_width="fill_parent"
      android:layout_height="wrap_content"
      android:layout_weight="1"  android:textSize="16dip" android:layout_marginLeft="10dip"/>

</LinearLayout>

На своем устройстве я вижу изображение, и два текстовых просмотра, отображаемые последовательно слева направо.

Я хочу, чтобы ImageView все вправо (это уже правильно), имя TextView справа от ImageView (это правильно) и адреса TextView, под именем TextView. Я не смог выяснить, как правильно изложить это.

Обратите внимание, что я знаю, что могу просто добавить новую строку к имени и после этого включить текст адреса, но я хочу, чтобы эти два элемента имели разные размеры шрифтов, так что это не вариант. Спасибо большое!

Это было полезно?

Решение

Вам нужно установить ориентацию Linearlayout и достичь того, что вы хотите сделать, вам нужно использовать несколько из них. В псевдокоде вам придется сделать:

<LinearLayout
    android:orientation="horizontal"
    ...>
    <ImageView
        android:id="@+id/image"
        ... />
    <LinearLayout
        android:orientation="vertical"
        ...>
        <TextView
             android:id="@+id/name"
             ...>

        <TextView
             android:id="@+id/address"
             ...>
    </LinearLayout>
</LinearLayout>
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top