Image.rotate90Degrees()不适用于iOS,适用于模拟器和Android。
Nexus5 -Android上的图片没问题
[]
但它在iPhone6Plus的底部变成了白色的正方形:
[]
以下是示例代码:
public void start()
{
if(current != null){
current.show();
return;
}
Form hi = new Form(new BorderLayout(BorderLayout.CENTER_BEHAVIOR_CENTER));
Label label = new Label();
hi.addComponent(BorderLayout.CENTER, label);
Image image = pictures.getImage("000008.jpg");
Image imageNew = Image.createImage(Display.getInstance().getDisplayHeight(), Display.getInstance().getDisplayWidth());
Graphics graphics = imageNew.getGraphics();
graphics.drawImage(image, 0, 0, imageNew.getWidth(), imageNew.getHeight());
imageNew = imageNew.rotate90Degrees(false);
label.setIcon(imageNew);
hi.show();
}
答案 0 :(得分:0)
由于图像被克隆,无论如何都不需要将图像绘制到新图像上。通常使用多图像slows down the application in iOS。
如果您只在roateImage
上执行image
,它应该有用。由于6+是一个非常高的DPI设备,因此图像可能会在某个时刻超过某些纹理大小阈值。