47

我有一个 ImageView 我想显示匹配设备的全宽,我意识到像这样:

<ImageView
    android:id="@+id/home_bar_newvault"
    android:layout_width="wrap_content"
    android:layout_height="40dp"
    android:scaleType="centerCrop"
    android:layout_alignParentBottom="true"
    android:src="@drawable/home_bar" />

home_bar 是一个 PNG 图像文件,尺寸如下:2399x254。当我选择查看 UI 的图形布局时,它会在活动底部正确显示图像视图。但是,当我在设备上启动应用程序时,它根本不会显示 Imageview。

4

11 回答 11

99

我有同样的问题,它只显示在 Android Studio 2.2 的设计选项卡中。

我所做的就是将分配的自动键(通过拖放 ImageView 填充)从“文本”选项卡中更改app:srcCompat="@drawable/logo"android:src="@drawable/logo"“文本”选项卡,使其同时出现在模拟器和设备上,例如

<ImageView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:src="@drawable/logo"
    android:layout_alignParentTop="true"
    android:layout_centerHorizontal="true"
    android:layout_marginTop="75dp"
    android:id="@+id/logoImageView"
    android:scaleType="fitXY"
    android:scaleX="1.5"
    android:scaleY="1.5" />
于 2016-11-03T09:27:53.290 回答
24

好吧,我尝试更改图像的分辨率(将其切成两半使其成为 1000x130),并以某种方式解决了问题。我认为Android不能直接渲染这样的大图像?我不知道,如果您对主题有更多了解,请不要犹豫回复!无论如何,缩小图像工作。

于 2013-08-15T11:06:18.500 回答
21

对我来说,问题是我正在使用

tools:src=...

而不是

android:src=...

它在尝试使用已经存在的模板图像时自动生成。

于 2019-08-26T05:02:24.140 回答
17

您可以使用:

android:background="@drawable/home_bar"

代替:

android:src="@drawable/home_bar"
于 2017-10-11T14:20:33.680 回答
12

我遇到了同样的问题,并且能够使用以下方法解决它。

我的问题是可绘制存档的方向写在第二个scrCompact框中。

我复制粘贴在向上的框中,问题就解决了。

在此处输入图像描述

于 2019-07-17T17:53:09.833 回答
6

如果图像太大,请使用drawable-nodpi文件夹。res

于 2018-07-03T14:47:18.473 回答
1

我的三星手机有问题,没有显示我的drawable,但在另一部手机上运行良好。图片没有任何大尺寸或其他异常。

为了解决这个问题,我只是将我的图片资源放入一个可绘制的子文件夹中,而不是将它放在主要的可绘制文件夹中。例如,从 res/drawable 到 res/drawable-mdpi 对我有用。如果您有一张图片可用于没有特定 dpi 的所有内容,请将其放入 res/drawable-nodpi。这里有更多关于 dpi 文件夹的信息。

于 2018-02-12T16:21:17.967 回答
1

以上都没有成功,这是一个非常大的图像,找到了这个解决方案:在你的清单文件中

<application
        //this solve it for me.
        android:hardwareAccelerated="false"
        // Add this if the previuos line didn't solve tge problem
        android:largeHeap="true"
        android:theme="@style/AppTheme">

为我解决。

希望它可以帮助某人。

于 2019-04-29T14:54:24.913 回答
0

就我而言,我更改了图像的比例类型

android:scaleType="fitXY"
于 2020-06-13T08:12:08.983 回答
0

(以下回答基于Android Studio最新开发(2021年))

您应使用androidx.appcompat.widget.AppCompatImageViewapp:srcCompat最大化兼容性。

当您创建新的默认项目时,应该已经包含了实现,因为这在某种程度上类似于 ConstraintLayout 案例。

<androidx.appcompat.widget.AppCompatImageView
    android:id="@+id/home_bar_newvault"
    android:layout_width="wrap_content"
    android:layout_height="40dp"
    android:scaleType="centerCrop"
    android:layout_alignParentBottom="true"
    app:srcCompat="@drawable/home_bar" />
于 2021-04-19T14:08:42.670 回答
0

我有同样的问题,图像在布局编辑器中很好,但在我启动应用程序时变得模糊。我的解决方案很简单,将图像复制粘贴到项目时,选择drawable-xxhdpi作为目标目录以使图像尺寸更小。

于 2021-09-22T08:59:43.157 回答