当前位置: 首页 > 知识库问答 >
问题:

ImageView未在android xml中显示(相对布局)

胡越
2023-03-14

![我已经以线性布局(下面给出的代码)对其进行了编码,但想知道如何使用相对布局进行相同的操作,或者这只是一个考虑到布局的坏主意?

线性布局 -

<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">

   <ImageView
    android:src="@drawable/ocean"
    android:layout_width="match_parent"
    android:layout_height="0dp"
    android:layout_weight="1"
    android:scaleType="centerCrop"
  />

<TextView
    android:text="You're invited!"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:textColor="@android:color/white"
    android:textSize="45sp"
    android:paddingTop="16dp"
    android:paddingLeft="16dp"
    android:background="#009688"/>

<TextView
    android:text="Bonfire at the beach"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:textColor="@android:color/white"
    android:paddingTop="8dp"
    android:paddingBottom="16dp"
    android:paddingLeft="16dp"
    android:textSize="24sp"
    android:background="#009688"/>

][1] 使用相对布局时,我的ImageView不会显示在屏幕上:

  <RelativeLayout
   xmlns:android="http://schemas.android.com/apk/res/android"
   android:layout_width="match_parent"
   android:layout_height="match_parent"
  >

  <ImageView
    android:src="@drawable/ocean"
    android:layout_width="match_parent"
    android:layout_height="0dp"
    android:layout_weight="1"
    android:scaleType="centerCrop"
    android:id="@+id/ocean"
  />
</RelativeLayout>

共有3个答案

尉迟国发
2023-03-14

您只能在 LinearLayout 中使用layout_weight。试试这个。

 <LinearLayout
  xmlns:android="http://schemas.android.com/apk/res/android"
  android:layout_width="match_parent"
  android:layout_height="match_parent"
  android:orientation="vertizal">

 <ImageView
   android:src="@drawable/ocean"
   android:layout_width="match_parent"
   android:layout_height="0dp"
   android:layout_weight="1"
   android:scaleType="centerCrop"
   android:id="@+id/ocean"/>
陶成济
2023-03-14

像这样更改ImageView的高度。

<RelativeLayout
   xmlns:android="http://schemas.android.com/apk/res/android"
   android:layout_width="match_parent"
   android:layout_height="match_parent"
  >

  <ImageView
    android:src="@drawable/ocean"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_weight="1"
    android:scaleType="centerCrop"
    android:id="@+id/ocean"
  />
裘嘉树
2023-03-14

这是因为您使用的是android:layout_height=“0dp”

请使用< code > Android:layout _ height = " wrap _ content "

 类似资料:
  • 布局文件 如果我正在移动cardView的项目并与recyclerView并行,那么只有它正在显示。在当前情况下,屏幕上显示的是注释,甚至没有回收器查看项目。 如何在relativeLayout内使用cardView? 我在这里遗漏了任何android概念吗?

  • 我有一个装满图像的文件夹要在我正在创建的游戏中实现,我想在窗口中显示这些。这是我迄今为止的代码。 这将是一个程序在IntelliJ/中从jar运行。“资产”文件夹与此文件位于同一目录中。我没有发现文件路径错误,所以我假设它可以找到图像,但它不会出现在屏幕上,而矩形会出现。 公平警告,我正在从头开始学习JavaFX,我发现没有太多关于事物如何工作的解释,所以这可能是一个愚蠢的问题。

  • 因此,在Android的ImageView中显示图像非常简单。我从图库中挑选了一张图片,保存了它到数据库的链接,然后尝试在ImageView中显示它。 我也尝试了这个小的图像不是由相机拍摄的,这是工作的。但每次我选择用手机相机拍摄的图像时,都会有一个错误: 那么,在超过300万像素的相机中,如何在我的ImageView中显示图像呢?

  • 我在Java fx控制器类中有一些代码如下所示。图像没有显示出来。图像就位,没有错误。请引导。 我不能让图像显示出来。我确信fxml和controller类使用了正确的注释。我在类中使用了正确的@fxml,没有变量错误。

  • 我想在JavaFX的ImageView中显示图像。图像应该从SQLite数据库中获取,并在场景加载时显示。我使用以下代码片段从数据库获取代码,并在之前创建的ImageView中显示它。但是图像没有按预期显示。我做错了吗?P. S.我测试了改变路径在两个和当读取文件从目录到。但似乎没有什么奏效。但是当我手动将一个图像文件放在src目录中并尝试读取它时,它就像一个魅力。但是我想展示一张从数据库中提取的