1

我正在开发一个 Android 应用程序。它假装适用于许多国家,所以我需要根据用户登录应用程序的国家/地区更改一些图标和“drawables”,例如用户所在国家/地区的移动运营商,可能是国家/地区的国旗等。

我打算通过 Web 服务上的 URL(使用 Volley)来轻松获取这些内容。

但是,谈到 Android 的多屏幕密度,我不知道在这种情况下是否“有效”从服务获取一个单一的图像大小以将其放在应用程序上,或者根据设备的屏幕密度然后请求相应的图像到服务器(如果这是一个好的做法)。

你是如何处理这些案件的?任何评论我都会非常感激,谢谢!!

4

3 回答 3

1

我相信您所描述的案例是一种有效且良好的方法。

您可以简单地将图像解析为服务器上适用的屏幕密度,然后根据文件命名或排序约定将它们拉入您的应用程序。即密度 = getDensity -> 从图像/密度中提取图像

或者,如果这些图像足够小,您可以在拉取后在应用内执行调整大小,以使用 BitmapFactory 方法简化流程。

于 2016-09-22T15:42:08.427 回答
0

对于您想要保持不变的尺寸,您可以使用 in/mm/pt。查看更多类似内容: Android 上的“px”、“dp”、“dip”和“sp”有什么区别?

于 2016-09-22T15:21:39.517 回答
0

为了结束这个问题,我将根据我最近从服务器获取图像时的情况来回答它:

正如谷歌推荐的那样: https ://youtu.be/HY9aaXHx8yA?t=4m4s

我用来Picasso从互联网上获取图像。这个库非常酷地处理所有调整大小和缓存,并简化了一切。它甚至可以与本地资源一起使用。

我建议使用这个库来完成这项任务。

干杯。

于 2017-12-19T15:32:30.357 回答