小编net*_*501的帖子

我如何确定Android需要什么尺寸(以像素为单位)才能在设备上正确显示该图像?

我想在我的应用程序中显示两个图像.

第一张图片是全屏(作为应用程序的背景).我已多次阅读developer.android.com上的"支持多个屏幕"文章,但是,我仍然不知道每个dpi类别的图像大小.我尝试了我认为正确的尺寸但是,当在更大的屏幕上观看应用程序(即1280x800 @ mdpi)时,我发现背景看起来像素化了.这是可以理解的,因为我的mpdi图像是320x480px.我怎么能纠正这个?我应该使用什么尺寸的图像?

第二个图像是一个按钮.目前我的图像分辨率非常高,但是应用程序可以将其缩小以使其看起来很好.但是,当应用程序发布时,我不希望这样.对于此图像,我需要知道图像的像素大小.目前,它60dp x 50dp在应用程序内.这将转换为像素?我知道使用公式px = dp * (dpi / 160)但是,在这种情况下dpi会是什么?我不能使用NinePatch PNG来拍摄这张照片.

我不明白使我的图像开始的大小(以像素为单位),以便它们在Android设备上正确显示.如果您使用的是mdpi设备,dp = px吗?

更新:

经过几个小时的敲击,我想出了以下内容:

drawable-xlarge-xhdpi   2560x1920px
drawable-large-xhdpi    1920x1440px
drawable-normal-xhdpi   1280x960px

drawable-xlarge-hdpi    1920x1440px
drawable-large-hdpi     1440x1080px
drawable-normal-hdpi    960x720px

drawable-xlarge-mdpi    1280x960px
drawable-large-mdpi     960x720px
drawable-normal-mdpi    640x480px

drawable-xlarge-ldpi    960x720px
drawable-large-ldpi     720x540px
drawable-normal-ldpi    480x360px
Run Code Online (Sandbox Code Playgroud)

这些将是我的可绘制目录和我期望的最大分辨率(我决定不支持小屏幕).因此,我的图像将是这些尺寸.

它在我的手机上看起来很棒.我看不到任何文物.它似乎也适用于1280x800 @ mpdi屏幕的仿真器,所以希望它能在所有设备上运行......

有没有人看到这样做的问题?有一个更好的方法吗?我的计算看起来是否正确?

android pixel density-independent-pixel

13
推荐指数
1
解决办法
7196
查看次数

标签 统计

android ×1

density-independent-pixel ×1

pixel ×1