2

我知道如何在 J2me 中显示本地图像。如何显示在线图像?以下代码(下面的图像 URL 仅用于演示目的)不会产生任何结果。

Image logo = Image.createImage("http://whatever.com/img/whatever.png");

谢谢

4

2 回答 2

1

此类问题的第一个呼叫端口应该是MIDP 2.0 Javadocs

在那里你会看到createImage有一个接受;的重载。InputStream这将做你需要的。

或者,您可以将整个图像下载到一个字节数组中,并使用另一种替代形式createImage.

于 2012-07-09T10:39:12.503 回答
1

您需要通过手动加载图像HttpConnection

使用此方法加载图像:

public Image loadImage(String url) throws IOException {
    HttpConnection hpc = null;
    DataInputStream dis = null;
    try {
      hpc = (HttpConnection) Connector.open(url);
      int length = (int) hpc.getLength();
      byte[] data = new byte[length];
      dis = new DataInputStream(hpc.openInputStream());
      dis.readFully(data);
      return Image.createImage(data, 0, data.length);
    } finally {
      if (hpc != null)
        hpc.close();
      if (dis != null)
        dis.close();
    }
}

另请参阅本教程

于 2012-07-09T10:39:29.093 回答