Android 开发:扩展以适应不同的设备
我正在制作游戏并使用 SurfaceView。 我加载代表字符和背景等的位图。
但是我如何正确缩放它以适应大型设备、小型设备和其他设备?
//Simon
注意* dpi 不起作用,使用画布时只有像素起作用
Im making a game and using surfaceview.
I load bitmaps that represent character and background and so on.
But HOW do I properly scale it to fit large devices and small devices and other devices?
//Simon
NOTE* dpi wont work, only pixels work whhen using canvas
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
您可以实现一个辅助方法,用于请求基于设备 dpi 的计算。
根据 @MitulNakum 对此 question 的回答,执行以下操作:
You can implement a helper method that you can use to request calculations based on the device's dpi.
Based on @MitulNakum answer from this qustion, do this:
看看 AndEngine 的相机。你想要的一切都可以在那里找到,而且它是开源的!我已将此引擎用于许多游戏和原型应用程序。它有很好的记录。
AndEngine.org
源代码
Take a look at AndEngine's Cameras. Everything you are looking for can be found there, and it is open source! I have used this engine for a number of games and prototype apps. It is very well documented.
AndEngine.org
Source Code
Android 支持的方式是为您的应用程序所需的不同尺寸的每个位图创建多个图像,并让应用程序决定在给定的屏幕密度下使用哪个图像。这些图像将放入drawable-ldpi、drawable-hdpi 等文件夹中。查看链接并仔细阅读: http://developer.android.com/guide/ Practices/screens_support.html
不过内存不太友好。 :(
The android supported way is by creating several images for each bitmap you need for your app of varying sizes and letting the app decide which to use for a given screen density. Those images would go in the drawable-ldpi, drawable-hdpi, etc, folders. Check out the link and read it closly: http://developer.android.com/guide/practices/screens_support.html
Not very memory friendly though. :(