我设置了一个动态壁纸(为简单起见,假设它由两个并排放置的旋转位图组成,每个旋转速度不同;还要注意位图的边缘(不是图像周围的不可见框,而是绘图的实际像素)正在触摸。)
我将每个转换描述为画布大小的百分比(0 到 1 之间的值乘以 c.getHeight() 和 c.getWidth()(其中 c 是画布)。)
无论如何,只要保持纵横比,一切都可以正常工作。所以 xxhdpi 和 xhdpi @ 1080x1920 和 720x1280 都很好,但是当我在 nexus s @ 480x800 上运行它时,这两个位图不再正确定位。
我不想扭曲我的图像(它们是圆圈并且必须保持圆圈),所以我认为最好的方法是限制画布的大小并将其居中。
所以对于 nexus s @ 480x800,我实际上只想在一个 450x800 的区域中绘制,我将在我的屏幕上居中。
事实上,我总是希望我的 2 个位图位于高度 = 宽度 * 0.5625 的区域中。
我该怎么做呢?
注意:我的动态壁纸基于立方体样本。
如果我遗漏了任何重要的细节,请告诉我,
谢谢!
维尔纳