显示从SD卡到手机的图像 - JavaME

时间:2011-03-02 03:11:16

标签: java blackberry java-me

我正试图在我的黑莓手机上显示SD卡中的图像。

我的代码是这样,但黑莓屏幕上没有显示任何内容。

InputStream input = filenames.openInputStream();
Image image=Image.createImage(input);
Image copy = Image.createImage(image.getWidth(), image.getHeight());            
javax.microedition.lcdui.Graphics g = copy.getGraphics();
g.drawImage(image, 0, 0, 0);

1 个答案:

答案 0 :(得分:1)

我认为问题可能在于您正在创建图片copy并尝试将input图片绘制到该图片上。在不知道其余代码的情况下,它似乎永远不会添加到您的MainScreen对象上,因此不会显示。

您是否有任何特殊原因试图这样做?

您最好使用BitmapField代替并明确地将其添加到您的主屏幕。像

这样的东西
    BitmapField imageCanvas = new BitmapField();

    InputStream input = photoFile.openInputStream();

    int fileSize = (int) photoFile.fileSize();
    byte[] data = new byte[fileSize];
    input.read(data, 0, fileSize);

    Bitmap photoBitmap = EncodedImage.createEncodedImage(data, 0, data.length).getBitmap();
    imageCanvas.setBitmap(photoBitmap);
    add(imageCanvas);

我为了简洁而省略了try catch