在使用九补丁生成器缩放用于 ImageButton 的图像以检索所有 dpi 文件并维护适当的“.9”扩展名并引用按钮 src 中的位图后,我 <使用 Nexus 5 虚拟模拟器(1080X1920,xxhdpi)仍然得到以下结果:
...这里的 ImageButtons 根本不可能是 227X53 像素 (xxhdpi)...而是,系统会检索较低的 dpi,如 mdpi。
以下是其中一个按钮的 XML 代码:
<ImageButton
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/demosBtn"
android:src="@drawable/demo_btn"
android:layout_alignParentBottom="true"
android:layout_alignParentRight="true"
android:layout_alignParentEnd="true"
android:background="@android:color/transparent" />
至于演示按钮的drawable资源文件:
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@drawable/pressed_demo" android:state_pressed="true"/>
<item android:drawable="@drawable/norm_demo"/>
</selector>
P.S.我也用ImageView尝试过这个,将其设置为可点击,将调整ViewBounds设置为true,并将scaleType设置为centerCrop,但它不起作用。
最佳答案
使用SVG(可缩放 vector 图形)!您可以将它们缩放到任何分辨率,并且它们看起来仍然超高清。 :D
关于java - 缩放 ImageButton 以适应各种屏幕尺寸,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36043714/