我正在尝试为Android中的手机应用程序创建动画,并创建了320pix高的图像。但当他出现在我的Galaxy S3上的0,0位置时,他有点小......(肖像模式和风景)。我宁愿不为这么高的分辨率创建大图像,所以有没有办法将屏幕分辨率设置为640x480或1024x768?它似乎是目前最高分辨率。
我是Java和Android的新手。 (.Net背景)。我正在使用Canvas和SurfaceView。我希望有一种SetResolution类型的方法......希望有人可以提供帮助。
答案 0 :(得分:0)
您无法轻松更改屏幕分辨率(如果您正在尝试这样做)。
因此,您需要创建更大的图片,或者将其缩放到所需的屏幕尺寸。
你应该熟悉Android上的所有密度和分辨率。我强烈建议您阅读Supporting Multiple Screen Sizes上的Android开发者文档。它确实包含了很多关于该主题的有用信息。
它还可以帮助您了解Android如何为您调整图像大小。
简而言之,有关如何自行完成的一些信息:
您可以在SurfaceHolder.Callback
中的SurfaceHolder
次使用中添加SurfaceView
。当屏幕分辨率发生变化时,此回调函数会调用method。您可以创建一个静态类,您将传递新的屏幕大小。这个类可以计算屏幕的比例,你可以假设你总是使用800x480屏幕(或任何你喜欢的)。您使用double MyCoord.x(int)
之类的方法。您在假定的800x480屏幕内传递x坐标 - 该方法根据您从SurfaceHolder.Callback
传递给静态类的大小返回屏幕上的实际坐标。
这将是你有一种可能性。要查找更详细的解释和更多可能性,您应该阅读开发人员文档,我认为这些文档在大多数主题上都有很好的例子:)