为什么Linearlayout的背景图片没有在Android中显示?

时间:2018-02-23 02:13:31

标签: android android-layout

我有一些针对Android的布局问题,以下代码是我的布局文件

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    tools:context="com.wen.test.MainActivity">

    <LinearLayout
        android:id="@+id/dashboard_layout"
        android:layout_weight="0.3"
        android:layout_width="match_parent"
        android:layout_height="0dp"
        android:orientation="horizontal">


        <RelativeLayout
            android:id="@+id/dashboard_item1_layout"
            android:layout_weight="0.5"
            android:layout_width="0dp"
            android:layout_height="match_parent"
            android:layout_margin="5dp"
            android:background="@drawable/no_signal">

        </RelativeLayout>


        <RelativeLayout
            android:id="@+id/dashboard_item2_layout"
            android:layout_weight="0.5"
            android:layout_width="0dp"
            android:layout_height="match_parent"
            android:layout_margin="5dp">

        </RelativeLayout>

    </LinearLayout>

    <RelativeLayout
        android:layout_weight="0.7"
        android:layout_width="match_parent"
        android:layout_height="0dp">

        <ImageView
            android:layout_width="match_parent"
            android:layout_height="match_parent"/>

    </RelativeLayout>
</LinearLayout>

如下图所示:

enter image description here

问题: 为什么dashboard_item1_layoutdashboard_item2_layout的背景未通过以下代码显示?

android:background="@drawable/no_signal"

但我可以将背景图片设置为dashboard_layout。 我错过了什么吗?提前谢谢。

3 个答案:

答案 0 :(得分:1)

除了按预期添加dashboard_item1_layoutdashboard_item2_layout的背景外,我什么都不做。

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical">

    <LinearLayout
        android:id="@+id/dashboard_layout"
        android:layout_weight="0.3"
        android:layout_width="match_parent"
        android:layout_height="0dp"
        android:orientation="horizontal">


        <RelativeLayout
            android:id="@+id/dashboard_item1_layout"
            android:layout_weight="0.5"
            android:layout_width="0dp"
            android:layout_height="match_parent"
            android:layout_margin="5dp"
            android:background="@drawable/like_outline">

        </RelativeLayout>


        <RelativeLayout
            android:id="@+id/dashboard_item2_layout"
            android:layout_weight="0.5"
            android:layout_width="0dp"
            android:background="@drawable/like_star_outline"
            android:layout_height="match_parent"
            android:layout_margin="5dp">

        </RelativeLayout>

    </LinearLayout>

    <RelativeLayout
        android:layout_weight="0.7"
        android:layout_width="match_parent"
        android:layout_height="0dp">

        <ImageView
            android:layout_width="match_parent"
            android:layout_height="match_parent"/>

    </RelativeLayout>
</LinearLayout>

结果:

enter image description here

答案 1 :(得分:0)

在代码中设置背景是可以的,但问题似乎在no_signal.xml文件中。你能用这个文件显示代码吗?

答案 2 :(得分:0)

在手机上查看此信息。我刚刚在您的代码中添加了预期的背景。另外,用原生图像替换背景图像。如果它已运行,则仅发出您的资产。

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

    android:orientation="vertical"
>

    <LinearLayout
        android:id="@+id/dashboard_layout"
        android:layout_weight="0.3"
        android:layout_width="match_parent"
        android:layout_height="0dp"
        android:background="@color/color_red_fab"
        android:orientation="horizontal">


        <RelativeLayout
            android:id="@+id/dashboard_item1_layout"
            android:layout_weight="0.5"
            android:layout_width="0dp"
            android:layout_height="match_parent"
            android:layout_margin="5dp"
            android:background="@android:drawable/ic_menu_close_clear_cancel">

        </RelativeLayout>


        <RelativeLayout
            android:id="@+id/dashboard_item2_layout"
            android:layout_weight="0.5"
            android:layout_width="0dp"
            android:layout_height="match_parent"
            android:background="@android:drawable/ic_menu_close_clear_cancel">

        android:layout_margin="5dp">

        </RelativeLayout>

    </LinearLayout>

    <RelativeLayout
        android:layout_weight="0.7"
        android:layout_width="match_parent"
        android:layout_height="0dp">

        <ImageView
            android:src="@android:drawable/ic_menu_close_clear_cancel"
        android:layout_width="match_parent"
            android:layout_height="match_parent"/>

    </RelativeLayout>
</LinearLayout>