从上到下移动文本视图

Move textview from top to bottom

在上图中,我想将包含 bill microsoft 的文本视图和另一个文本视图移动到图像下方。我该怎么做?

我现在已经写好了这个布局。

<android.support.v7.widget.CardView
    android:id="@+id/card_tracks"
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="180dp"
    android:layout_gravity="center"
    android:layout_margin="16dp"
    android:elevation="7dp">

    <LinearLayout
        android:id="@+id/main_ll"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_gravity="center_vertical">

        <ImageView
            android:id="@+id/speaker_image"
            android:layout_width="60dp"
            android:layout_height="60dp"
            android:layout_margin="10dp"
            android:adjustViewBounds="true"
            android:scaleType="centerCrop"
            android:src="@drawable/default_user"/>

        <LinearLayout
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:orientation="vertical"
            android:padding="10dp">

            <TextView
                android:id="@+id/speaker_name"
                android:layout_width="wrap_content"
                android:layout_height="0dp"
                android:layout_weight="0.5"
                android:gravity="center_vertical"
                android:text="@string/placeholder_speaker_name"
                android:textAppearance="?android:attr/textAppearanceMedium"
                android:textColor="#000000"
                android:textStyle="bold"/>

            <TextView
                android:id="@+id/speaker_designation"
                android:layout_width="wrap_content"
                android:layout_height="0dp"
                android:layout_weight="0.5"
                android:gravity="top"
                android:text="@string/placeholder_speaker_designation"
                android:textAppearance="?android:attr/textAppearanceSmall"
                android:textColor="#000000"
                android:textStyle="bold"/>

        </LinearLayout>

    </LinearLayout>

    <RelativeLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_below="@id/main_ll">

        <TextView
            android:id="@+id/speaker_bio"
            android:layout_width="326dp"
            android:layout_height="64dp"
            android:layout_margin="10dp"
            android:text="@string/placeholder_speaker_bio"
            android:textAppearance="?android:attr/textAppearanceSmall"
            android:textColor="#000000"/>
    </RelativeLayout>

</android.support.v7.widget.CardView>

请使用这个

<android.support.v7.widget.CardView
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/card_tracks"
    android:layout_width="match_parent"
    android:layout_height="180dp"
    android:layout_gravity="center"
    android:layout_margin="16dp"
    android:elevation="7dp">

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="vertical">

        <LinearLayout
            android:id="@+id/main_ll"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_gravity="center_vertical">

            <ImageView
                android:id="@+id/speaker_image"
                android:layout_width="60dp"
                android:layout_height="60dp"
                android:layout_margin="10dp"
                android:adjustViewBounds="true"
                android:scaleType="centerCrop"
                android:src="@drawable/icon" />

            <LinearLayout
                android:layout_width="0dp"
                android:layout_height="wrap_content"
                android:layout_weight="1"
                android:orientation="vertical"
                android:padding="10dp">

                <TextView
                    android:id="@+id/speaker_name"
                    android:layout_width="wrap_content"
                    android:layout_height="0dp"
                    android:layout_weight="0.5"
                    android:gravity="center_vertical"
                    android:text="placeholder_speaker_name"
                    android:textAppearance="?android:attr/textAppearanceMedium"
                    android:textColor="#000000"
                    android:textStyle="bold" />

                <TextView
                    android:id="@+id/speaker_designation"
                    android:layout_width="wrap_content"
                    android:layout_height="0dp"
                    android:layout_weight="0.5"
                    android:gravity="top"
                    android:text="placeholder_speaker_designation"
                    android:textAppearance="?android:attr/textAppearanceSmall"
                    android:textColor="#000000"
                    android:textStyle="bold" />

            </LinearLayout>

        </LinearLayout>

        <RelativeLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content">

            <TextView
                android:id="@+id/speaker_bio"
                android:layout_width="326dp"
                android:layout_height="64dp"
                android:layout_margin="10dp"
                android:text="placeholder_speaker_bio"
                android:textAppearance="?android:attr/textAppearanceSmall"
                android:textColor="#000000" />
        </RelativeLayout>
    </LinearLayout>
</android.support.v7.widget.CardView>

您只需添加:

android:orientation="vertical"

到您的第一个 LinearLayout,这样 TextView 就可以绘制在 ImageView 下面。