java - 如何显示与屏幕成比例的图像

标签 java android

我想在 TextView 上显示 .png 图像。有人会使用平板电脑,有人会使用智能手机,我怎样才能显示与屏幕成比例的图像?我是否必须创建不同的图像并在代码中使用类似 if(screen == smartphone) setView(Png1.png) 的内容?

最佳答案

在设计应用程序时需要注意两个重要参数
应该在多个设备上运行:

  • 尺寸(设备的物理尺寸)
  • 设备的密度

大小:Android 中设备的大小不是定义为唯一的物理值,而是定义为一个范围。
它们是:小、正常、大和超大。

密度:密度也定义为一个范围。
它们是:ldpi、mdpi、hdpi 和 xhdpi。

enter image description here

为了处理尺寸,您需要使用多个布局,每个尺寸类别一个,并且您需要为每个布局的 View 的高度和宽度使用不同的 dp 值,因为小型和大型设备的尺寸不会是一样的。

为了处理密度,您需要针对不同的屏幕密度使用不同的可绘制对象,即您需要将不同密度的可绘制对象放置在不同的可绘制文件夹中。
例如:
这些是特定可绘制对象的分辨率

  • 36x36用于低密度(放置在drawable-ldpi中)
  • 48x48 用于中等密度(放置在drawable-mdpi 中)
  • 72x72 用于高密度(放置在drawable-hdpi 中)
  • 96x96 用于超高密度(放置在drawable-xhdpi 中)

此分辨率变化的比例为 3:4:6:8(ldpi:mdpi:hdpi:xhdpi)

如需进一步阅读,您可以引用此 Android 开发者的链接:
http://developer.android.com/guide/practices/screens_support.html

关于java - 如何显示与屏幕成比例的图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11932951/

相关文章:

java - 分词器空字符

Android:应用程序向 "remember"单条信息的最简单方法?

android - 将 Xamarin 表单更新到 5.0.0.2401 后,Xamarin 表单 android 抛出空异常

java - 对象变为空

android - 需要均匀间隔的按钮行

java - 客户端服务器套接字 java.net.SocketException : Software caused connection abort: recv failed

java - PowerMock 和 Mockito UnfinishedVerificationException

java - Spring Controller + JSP

java - 什么是 TCP 窗口更新?

java - 类型类型转换一个数字加倍