为什么 ImageButton 质量模糊或降低到最差?

我的应用程序有一个质量太差的 ImageButton。实际图像尺寸为 4176*4176(4176 像素),单独打开时看起来完全没问题。但是,当我将其导入 android studio 并将其分配给 ImageButton 时,图像质量会下降。我一直在尝试多种方法来解决这个问题,但还没有成功。我对 Android 编程完全陌生。我转到 res/drawable,然后右键单击以创建一个新的图像资产,然后指定导入 png 文件的位置。

实际图像:

http://img4.mukewang.com/613dbcc70001cd2713091300.jpg

工作室内部图像:

http://img.mukewang.com/613dbccf0001868602370393.jpg

这是activity_main.xml中的代码:


<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"

tools:context=".MainActivity"

android:gravity="center"

android:orientation="vertical">


<ImageButton

    android:id="@+id/police"

    android:layout_width="317dp"

    android:layout_height="295dp"

    android:layout_centerInParent="true"

    android:adjustViewBounds="true"

    android:scaleType="fitXY"


    android:background="@drawable/custom_button"

    />

</LinearLayout>

调用图像的自定义按钮代码:


<item

    android:state_pressed="true"

    android:drawable="@mipmap/pressed" />


<item

    android:drawable="@mipmap/defaultt" />

</selector>


慕斯709654
浏览 153回答 2
2回答

牛魔王的故事

我首先回顾一下 Android 上的密度无关像素。这是一个很好的博客,涵盖了这个概念:https&nbsp;:&nbsp;//www.captechconsulting.com/blogs/understanding-density-independence-in-android主要问题是您的图像(分辨率非常高)被压缩以适合图像按钮。通常,您希望通过不同的可绘制资源目录(例如,drawable-hdpi、drawable-xhdpi、drawable-xxhdpi)包含不同密度的图像资产。但是,现在,您可以使用矢量可绘制对象,这将减少每个密度桶拥有多个资产的需要,假设您能够生成 SVG 资产文件:https&nbsp;:&nbsp;//developer.android.com/guide/topics/图形/矢量可绘制资源

炎炎设计

您实际上是在/mipmap目录中引用像启动器图标这样的图像。我建议减小您仅使用它的图像大小ImageButton并将其放置在/drawable您想要的质量或可能小于当前质量的内部,而不是将其放置在/mipmap目录中。此外,我实际上没有看到如何scaleType帮助ImageButton.&nbsp;您可能也想删除该行。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java