android - Horizo​​ntal LinearLayout 在嵌套 Vertical LinearLayout 后不显示任何元素

标签 android xml android-layout android-linearlayout

在 Udacity Android 初学者类(class)之后,我想向 list_item View 添加一个音频图标按钮。现在 list_item.xml 有一个父级水平线性布局和一个嵌套的垂直线性布局。类(class)讲师通过更改为相对布局来添加音频图标,但我想看看如何使用线性布局来做到这一点。

    <?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
              xmlns:tools="http://schemas.android.com/tools"
              android:layout_width="match_parent"
              android:layout_height="wrap_content"
              android:background="@color/tan_background"
              android:minHeight="@dimen/list_item_height"
              android:orientation="horizontal">

    <ImageView
        android:id="@+id/imageView"
        android:layout_width="@dimen/list_item_height"
        android:layout_height="@dimen/list_item_height"/>


    <LinearLayout
        android:id="@+id/text_container"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="vertical"
        android:paddingLeft="16dp">


        <TextView
            android:id="@+id/textView1"
            android:layout_width="match_parent"
            android:layout_height="0dp"
            android:layout_weight="1"
            android:gravity="bottom"
            android:textAppearance="?android:textAppearanceMedium"
            android:textColor="@android:color/white"
            android:textStyle="bold"
            tools:text=""/>


        <TextView
            android:id="@+id/textView2"
            android:layout_width="match_parent"
            android:layout_height="0dp"
            android:layout_weight="1"
            android:gravity="top"
            android:textColor="@android:color/white"
            tools:text=""/>

    </LinearLayout>

    <ImageView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:src="@drawable/baseline_play_arrow_white_24"/>


</LinearLayout>

我现在的问题是,当我在嵌套的垂直线性布局之后添加任何元素时,什么也不会显示。我正在尝试不同的事情,但我就是无法理解。我能想到的是这是原因:

android:layout_width:"match_parent"

请告诉我如何在保持 LinearLayout 的同时将音频图标添加到右侧和中间。

这是我想要实现的输出

enter image description here

最佳答案

 <?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@color/apptool"
    android:orientation="horizontal">

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="100dp"
        android:layout_marginRight="10dp"
        android:layout_marginLeft="10dp"
        android:orientation="horizontal">


    <ImageView
        android:id="@+id/imageView"
        android:layout_width="0dp"
        android:layout_height="match_parent"
        android:src="@android:drawable/btn_star"
        android:tint="@color/black"
        android:background="#ebed54"
        android:layout_weight=".1"/>


    <LinearLayout
        android:id="@+id/text_container"
        android:layout_width="0dp"
        android:layout_height="match_parent"
        android:orientation="vertical"
        android:background="@color/colorPrimary"
        android:layout_weight=".3"
        android:paddingLeft="16dp">


        <TextView
            android:id="@+id/textView1"
            android:layout_width="match_parent"
            android:layout_height="0dp"
            android:layout_weight="1"
            android:gravity="bottom"
            android:textAppearance="?android:textAppearanceMedium"
            android:textColor="@android:color/white"
            android:textStyle="bold"
            tools:text="sdfdsfdsf"/>


        <TextView
            android:id="@+id/textView2"
            android:layout_width="match_parent"
            android:layout_height="0dp"
            android:layout_weight="1"
            android:gravity="top"
            android:textColor="@android:color/white"
            tools:text="sdfdsfdsf"/>

    </LinearLayout>

    <ImageView
        android:layout_width="0dp"
        android:layout_height="match_parent"
        android:layout_weight=".1"
        android:background="@color/colorPrimary"
        android:src="@android:drawable/ic_media_play"/>
    </LinearLayout>

</LinearLayout>

输出

enter image description here

关于android - Horizo​​ntal LinearLayout 在嵌套 Vertical LinearLayout 后不显示任何元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51247877/

相关文章:

android - 尝试在复合布局中对齐 RadioGroups 中的单选按钮

java - 安卓时间问题

android - 如何在 android L 中打开省电模式

android - 在实时应用程序的后台运行重复任务

java - android .getTop() 返回 0.0

安卓警告 : Grows due to localized text expansion

android - 相机的图像格式(Android)

java - 有条件地在 XML ArrayList 中包含 bean

java - 使用 Java 可序列化保存第二个对象的数组

Android Studio 在构建项目时出现 R 错误