代号来自 url 的一张图片
codename one image from url
我正在尝试使用 Java 开发一款移动应用程序,代号为一个插件。我的问题是 - 将图像从 URL 填充到标签的最简单方法是什么?我在谷歌上搜索了一下,我只找到了这段代码:
Image i = URLImage.createToStorage(placeholder, "fileNameInStorage", "http://xxx/myurl.jpg", URLImage.RESIZE_SCALE);
但我不知道如何使用它。什么是 placeholder
?它询问一个 EncodedImage
参数,但如果我这样做:
EncodedImage image = new EncodedImage(10, 10);
我收到 EncodedImage
受保护的错误消息。
我只是想将 URL 中的图像填充到表单中我想要的标签中。
我正在使用 GUI 生成器。
占位符图像是在下载来自 URL 的图像时应该显示的图像,它是一个编码图像。
如果您的 Label 已经有一个图标作为占位符,您可以使用它的图标,否则您可以创建一个新的占位符图像。以下是创建 EncodedImage 的 3 个选项和 URLImage 用法示例:
方法一:
//generate a grey placeholder that matches the size of the label's icon
Image placeholder = Image.createImage(label.getIcon().getWidth(), label.getIcon().getWidth(), 0xbfc9d2);
EncodedImage encImage = EncodedImage.createFromImage(placeholder, false);
方法二:
//Convert the label icon to EncodedImage
EncodedImage encImage = (EncodedImage)label.getIcon();
方法三:
//Create a fresh grey EncodedImage when label doesn't have any icon set initially
int deviceWidth = Display.getInstance().getDisplayWidth();
Image placeholder = Image.createImage(deviceWidth / 10, deviceWidth / 10, 0xbfc9d2); //square image set to 10% of screen width
EncodedImage encImage = EncodedImage.createFromImage(placeholder, false);
用法示例:
最好使用 URL 作为存储中的缓存图像名称。如果您有多个尺寸的同一张图片,只需在它们前面加上一个唯一的字符串,例如 "Large" + URL
label.setIcon(URLImage.createToStorage(encImage, "Medium_" + "http://xxx/myurl.jpg", "http://xxx/myurl.jpg", URLImage.RESIZE_SCALE));
我正在尝试使用 Java 开发一款移动应用程序,代号为一个插件。我的问题是 - 将图像从 URL 填充到标签的最简单方法是什么?我在谷歌上搜索了一下,我只找到了这段代码:
Image i = URLImage.createToStorage(placeholder, "fileNameInStorage", "http://xxx/myurl.jpg", URLImage.RESIZE_SCALE);
但我不知道如何使用它。什么是 placeholder
?它询问一个 EncodedImage
参数,但如果我这样做:
EncodedImage image = new EncodedImage(10, 10);
我收到 EncodedImage
受保护的错误消息。
我只是想将 URL 中的图像填充到表单中我想要的标签中。
我正在使用 GUI 生成器。
占位符图像是在下载来自 URL 的图像时应该显示的图像,它是一个编码图像。
如果您的 Label 已经有一个图标作为占位符,您可以使用它的图标,否则您可以创建一个新的占位符图像。以下是创建 EncodedImage 的 3 个选项和 URLImage 用法示例:
方法一:
//generate a grey placeholder that matches the size of the label's icon
Image placeholder = Image.createImage(label.getIcon().getWidth(), label.getIcon().getWidth(), 0xbfc9d2);
EncodedImage encImage = EncodedImage.createFromImage(placeholder, false);
方法二:
//Convert the label icon to EncodedImage
EncodedImage encImage = (EncodedImage)label.getIcon();
方法三:
//Create a fresh grey EncodedImage when label doesn't have any icon set initially
int deviceWidth = Display.getInstance().getDisplayWidth();
Image placeholder = Image.createImage(deviceWidth / 10, deviceWidth / 10, 0xbfc9d2); //square image set to 10% of screen width
EncodedImage encImage = EncodedImage.createFromImage(placeholder, false);
用法示例:
最好使用 URL 作为存储中的缓存图像名称。如果您有多个尺寸的同一张图片,只需在它们前面加上一个唯一的字符串,例如 "Large" + URL
label.setIcon(URLImage.createToStorage(encImage, "Medium_" + "http://xxx/myurl.jpg", "http://xxx/myurl.jpg", URLImage.RESIZE_SCALE));