2011-03-02 52 views
0

我试图在我的BlackBerry上显示SD卡上的图像。从SD卡向手机显示图像 - JavaME

我拥有的代码是这个,但没有任何显示在BlackBerry屏幕上。

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

我认为这个问题可能是你创造的形象copy并试图绘制input图像到这一事实。在不知道代码的其余部分的情况下,它看起来像是这个图像永远不会添加到您的MainScreen对象中,因此不会显示。

是否有任何特定的原因,你试图这样做?

您可能更好地使用BitmapField来代替,并将其明确地添加到您的MainScreen中。像

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块简洁