使用 Picasso android 的响应式图像

发布于 2025-01-10 12:21:43 字数 1185 浏览 0 评论 0原文

我开始使用 Picasso,而不是使用可绘制资源,这些资源会用 KB 和 MB 的图像填充我的应用程序,但我遇到了问题,我只是找不到正确的方法来使我的图像像以前一样在所有不同的屏幕上做出响应代码。

用于理解我的布局的图像(我指的是第一张大图像)

在此处输入图像描述

xml代码

<ImageView
            android:id="@+id/Chaves_Inicial"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:scaleType="centerCrop"
            android:src="@drawable/inicial_chaves"
            app:layout_constraintBottom_toTopOf="@+id/gd_imagem_baixo"
            app:layout_constraintEnd_toEndOf="parent"
            app:layout_constraintHorizontal_bias="0.0"
            app:layout_constraintStart_toStartOf="parent"
            app:layout_constraintTop_toTopOf="@+id/gd_inicial"
            app:layout_constraintVertical_bias="0.0" />

java

img_montalegre = findViewById(R.id.img_montalegre);
    String imagemmontalegre = "https://www.mybesthotel.eu/pic/_01_5b968f125d8de.jpg";
    Picasso.with(this).load(imagemmontalegre).into(img_montalegre);

我已经尝试过risize。

我只是希望我的图像与我在所有不同屏幕上放置的图像保持一致。

i started using Picasso instead of using drawable resources that would fill my app with KB, and MB of images, but i got a problem, i just can't find the proper way to make my images responsive in all different screens like was in previously code.

Image to understand my layout (i'm refering to the first image the big one)

enter image description here

xml code

<ImageView
            android:id="@+id/Chaves_Inicial"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:scaleType="centerCrop"
            android:src="@drawable/inicial_chaves"
            app:layout_constraintBottom_toTopOf="@+id/gd_imagem_baixo"
            app:layout_constraintEnd_toEndOf="parent"
            app:layout_constraintHorizontal_bias="0.0"
            app:layout_constraintStart_toStartOf="parent"
            app:layout_constraintTop_toTopOf="@+id/gd_inicial"
            app:layout_constraintVertical_bias="0.0" />

java

img_montalegre = findViewById(R.id.img_montalegre);
    String imagemmontalegre = "https://www.mybesthotel.eu/pic/_01_5b968f125d8de.jpg";
    Picasso.with(this).load(imagemmontalegre).into(img_montalegre);

i already tried risize.

I just want that my image stays like the image i put here in all different screens.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

活泼老夫 2025-01-17 12:21:43

我对此进行了更改,看起来几乎不错,在平板电脑中,图像有点奇怪,非常拉伸(也许我为平板电脑制作了另一个 xml)

xml

<ImageView
            android:id="@+id/img_montalegre"
            android:layout_width="0dp"
            android:layout_height="0dp"
            android:adjustViewBounds="true"
            android:scaleType="fitXY"
            app:layout_constraintBottom_toTopOf="@+id/gd_imagem_baixo"
            app:layout_constraintEnd_toEndOf="parent"
            app:layout_constraintHorizontal_bias="0.0"
            app:layout_constraintStart_toStartOf="parent"
            app:layout_constraintTop_toTopOf="@+id/gd_inicial"
            app:layout_constraintVertical_bias="0.0" />~

java

img_montalegre = findViewById(R.id.img_montalegre);
    String imagemmontalegre = "https://www.mybesthotel.eu/pic/_01_5b968f125d8de.jpg";
    Picasso.with(this).load(imagemmontalegre).into(img_montalegre);

i change for this and looks almost good, in tablet gets the image a little weird very stretched (maybe i make another xml for tablet)

xml

<ImageView
            android:id="@+id/img_montalegre"
            android:layout_width="0dp"
            android:layout_height="0dp"
            android:adjustViewBounds="true"
            android:scaleType="fitXY"
            app:layout_constraintBottom_toTopOf="@+id/gd_imagem_baixo"
            app:layout_constraintEnd_toEndOf="parent"
            app:layout_constraintHorizontal_bias="0.0"
            app:layout_constraintStart_toStartOf="parent"
            app:layout_constraintTop_toTopOf="@+id/gd_inicial"
            app:layout_constraintVertical_bias="0.0" />~

java

img_montalegre = findViewById(R.id.img_montalegre);
    String imagemmontalegre = "https://www.mybesthotel.eu/pic/_01_5b968f125d8de.jpg";
    Picasso.with(this).load(imagemmontalegre).into(img_montalegre);
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文