首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >多屏同点展示| Android

多屏同点展示| Android
EN

Stack Overflow用户
提问于 2011-01-04 20:23:39
回答 2查看 817关注 0票数 0

我正在创建一个全屏的游戏。我使用一个图像作为背景,并在其上绘制图像。背景图像在所有设备上看起来都很棒,但我不能在所有设备上的相同位置绘制覆盖图像。

例如,如果我使用

canvas.drawBitmap(overlay, 365, 85, paint);

对于宽度为854px的手机,它将完美地对齐图像。但如果低于这个值,它就会被推到右边。

我试过玩dip,但我似乎想不通。有没有什么地方我可以确保他们的项目在所有的分辨率上都是正确的?

EN

回答 2

Stack Overflow用户

发布于 2011-01-04 20:29:10

如果你想这样做,你可能需要根据屏幕的大小来计算位置。

您可以使用下面的代码找到这些代码:

代码语言:javascript
复制
   DisplayMetrics dm = new DisplayMetrics();
   getWindowManager().getDefaultDisplay().getMetrics(dm);
   wPix = dm.widthPixels;
   hPix = dm.heightPixels;
票数 1
EN

Stack Overflow用户

发布于 2011-01-04 22:41:19

我猜你的目标是1.6或更高。你的背景在每个设备上看起来都很好的原因是,当你解码资源时,Android会自动根据你的目标屏幕密度缩放资源。您可以通过将资源放在"drawable-nodpi“中(您必须创建此目录)或将适当的选项传递给解码位图函数(请查看文档)来防止出现这种情况。如果你这样做,你将需要手动缩放所有的位图。其他两个答案有正确的想法,抓起你的屏幕尺寸并计算所有的像素值。永远不要使用常量。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4593510

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档