我将占位符缩放到屏幕大小,如下所示。但是如果它首先在纵向模式下观看,它只需要屏幕并且在横向模式下不会覆盖整个屏幕。如果在横向模式下第一次观看,则它在纵向模式下看起来比屏幕尺寸大。
如何解决此问题。我检查了PropertyCross演示,同样存在同样的问题。
$config['index_page'] = '';
更新:
private EncodedImage largePlaceholder;
protected void initVars(Resources res) {
Image tmp = Image.createImage(Display.getInstance().getDisplayWidth(), Display.getInstance().getDisplayWidth() / 6 * 3, 0);
largePlaceholder = EncodedImage.createFromImage(tmp, false);
}
findMainImg(f).setIcon(URLImage.createToStorage(largePlaceholder, getMainImg + "_0_ y", getMainImg, URLImage.RESIZE_SCALE_TO_FILL));
答案 0 :(得分:1)
我建议将其设置为样式的bg图像,并将背景行为设置为SCALE_TO_FILL
或SCALE_TO_FIT
。
答案 1 :(得分:1)
您正在使用屏幕尺寸生成占位符图像,并且横向屏幕的宽度大于纵向。
如果您想要使图像响应,则必须添加方向更改侦听器,如果您来自纵向,则会下载另一个不同尺寸的图像,反之亦然。
private EncodedImage largePlaceholderPortrait;
private EncodedImage largePlaceholderLandscape;
private boolean isPortrait = Display.getInstance().isPortrait();
protected void initVars(Resources res) {
Image tmp = Image.createImage(Display.getInstance().getDisplayWidth(), Display.getInstance().getDisplayWidth() / 6 * 3, 0);
Image tmp2 = Image.createImage(Display.getInstance().getDisplayHeight(), Display.getInstance().getDisplayHeight() / 6 * 3, 0);
largePlaceholderPortrait = EncodedImage.createFromImage(isPortrait ? tmp : tmp2, false);
largePlaceholderLandscape = EncodedImage.createFromImage(isPortrait ? tmp2 : tmp, false);
}
findMainImg(f).setIcon(URLImage.createToStorage(largePlaceholderPortrait, isPortrait ? getMainImg + "_0_y_portrait" : getMainImg + "_0_y_landscape", getMainImg, URLImage.RESIZE_SCALE_TO_FILL));
f.addOrientationListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent evt) {
findMainImg(f).setIcon(URLImage.createToStorage(largePlaceholderPortrait, isPortrait ? getMainImg + "_0_y_portrait" : getMainImg + "_0_y_landscape", getMainImg, URLImage.RESIZE_SCALE_TO_FILL));
}
});
//Java 8
f.addOrientationListener((evt) -> {
findMainImg(f).setIcon(URLImage.createToStorage(largePlaceholderPortrait, isPortrait ? getMainImg + "_0_y_portrait" : getMainImg + "_0_y_landscape", getMainImg, URLImage.RESIZE_SCALE_TO_FILL));
});