我想在SD卡上顯示一個BitmapField中的圖像。怎麼做?任何人都可以給我一些示例代碼?來自SD卡的Blackberry BitmapField
2
A
回答
2
這可能是幫助完整。
public Bitmap getImage(){
Bitmap bitmapImage=null;
try{
InputStream input;
FileConnection fconn = (FileConnection) Connector.open("file:///store/home/user/dirname/imgname.png", Connector.READ_WRITE);
input = fconn.openInputStream();
ByteArrayOutputStream baos = new ByteArrayOutputStream();
int j = 0;
while((j=input.read()) != -1) {
baos.write(j);
}
byte[] byteArray = baos.toByteArray();
bitmapImage = Bitmap.createBitmapFromBytes(byteArray,0,byteArray.length,1);
}catch(Exception ioe){
System.out.println(ioe);
}
return bitmapImage;
}
享受..
0
試試這個示例代碼:如果您有任何疑問
public class LoadingScreen extends MainScreen implements FieldChangeListener
{
private VerticalFieldManager ver;
private ButtonField showImage;
private BitmapField bitmapField;
public LoadingScreen()
{
ver=new VerticalFieldManager(USE_ALL_WIDTH);
showImage=new ButtonField("Show Image",Field.FIELD_HCENTER);
showImage.setChangeListener(this);
ver.add(showImage);
bitmapField=new BitmapField(null,Field.FIELD_HCENTER);
bitmapField.setPadding(10, 0, 10, 0);
ver.add(bitmapField);
add(ver);
}
public void fieldChanged(Field field, int context)
{
if(field==showImage)
{
selectImageFromSDCARD();
}
}
private void selectImageFromSDCARD()
{
String PATH="";
if(SDCardTest.isSDCardAvailable())//sdcard available then
PATH = System.getProperty("fileconn.dir.memorycard.photos");//The default stored Images Path;
else
PATH = System.getProperty("fileconn.dir.photos");//The default stored Images Path;
FilePicker filePicker=FilePicker.getInstance();
filePicker.setPath(PATH);
filePicker.setListener(new Listener()
{
public void selectionDone(String url)
{
System.out.println("======================URL: "+url);
try
{
FileConnection file = (FileConnection)Connector.open(url);
if(file.exists())
{
InputStream inputStream = file.openInputStream();
byte[] data=new byte[inputStream.available()];
data=IOUtilities.streamToBytes(inputStream);
Bitmap bitmap=Bitmap.createBitmapFromBytes(data, 0, data.length,1);//Here we get the Image;
Bitmap scaleBitmap=new Bitmap(400, 300);//Now we are scaling that image;
bitmap.scaleInto(scaleBitmap, Bitmap.FILTER_LANCZOS);
bitmapField.setBitmap(scaleBitmap);
}
else
{
bitmapField.setBitmap(Bitmap.getBitmapResource("icon.png"));
}
}
catch (IOException e)
{
bitmapField.setBitmap(Bitmap.getBitmapResource("icon.png"));
}
}
});
filePicker.show();
}
protected boolean onSavePrompt() //It doesn't show the "Save","Discard","Cancel" POPUP;
{
return true;
}
public boolean onMenu(int instance) //It doesn't show the Menu;
{
return true;
}
}
請參閱本博客:Get Image From SDcard
1
嗨,大家好上面的代碼是非常有用的對於BB OS> = 5.0 我正在使用可用於OS 4的代碼.2或更高。
private Bitmap resizeBitmap(Bitmap image, int width, int height)
{
int rgb[] = new int[image.getWidth()*image.getHeight()];
image.getARGB(rgb, 0, image.getWidth(), 0, 0, image.getWidth(), image.getHeight());
int rgb2[] = rescaleArray(rgb, image.getWidth(), image.getHeight(), width, height);
Bitmap temp2 = new Bitmap(width, height);
temp2.setARGB(rgb2, 0, width, 0, 0, width, height);
return temp2;
}
private int[] rescaleArray(int[] ini, int x, int y, int x2, int y2)
{
int out[] = new int[x2*y2];
for (int yy = 0; yy < y2; yy++)
{
int dy = yy * y/y2;
for (int xx = 0; xx < x2; xx++)
{
int dx = xx * x/x2;
out[(x2 * yy) + xx] = ini[(x * dy) + dx];
}
}
return out;
}
相關問題
- 1. 來自SD卡的Android Widget
- 2. PhoneGap/Cordova BlackBerry FileSystem.root總是返回SD卡?
- 3. 播放來自SD卡的視頻
- 4. 來自SD卡的TableLayout背景
- 5. 解析來自SD卡的XML android
- 6. 如何在BlackBerry上的Bitmap/BitmapField上自定義繪圖?
- 7. BlackBerry BitmapField on focus change and click listener
- 8. ACTION_MEDIA_SCANNER_SCAN_FILE來自外部SD卡Lollipop +
- 9. 問題SD卡在SD卡
- 10. 使用PhoneGap檢索BlackBerry設備的sd卡細節
- 11. 來自Android的SD卡的PNG圖像顯示
- 12. 用Thread在BlackBerry上設置BitmapField的圖像
- 13. 添加外置SD卡在BlackBerry模擬器
- 14. BlackBerry:從SD卡圖像創建位圖對象
- 15. Android的SD卡
- 16. 顯示來自SD卡的圖像與webview不工作
- 17. 通用圖像加載器顯示來自SD卡的圖像
- 18. Android:無法共享來自SD卡的圖片
- 19. Android:使用ImageView顯示來自SD卡的.jpg圖像
- 20. 顯示來自SD卡的所有歌曲類型明智
- 21. 位圖不顯示在ListView中:來自SD卡的圖像
- 22. 在android中顯示來自SD卡的圖像
- 23. Android啓動畫面 - 來自SD卡的圖像?
- 24. 來自SD卡的Android XMLPullParser ..有些不對嗎?
- 25. 如何在Android畫布上顯示來自SD卡的圖像?
- 26. 帶有來自URL(XML數據)的圖像的Blackberry-ListField
- 27. 在BlackBerry上設置寬度和高度BitmapField
- 28. Blackberry - 在某個過程中在同一個BitmapField中動畫
- 29. 獲得空指針異常來自SD卡
- 30. SD卡中的Android
我想縮小位圖大小。怎麼可能? – 2012-04-06 14:24:27
您好,請嘗試搜索..如果你解決問題,請標記爲true。http://stackoverflow.com/questions/1769755/blackberry-how-to-resize-image。 – 2012-04-06 19:12:45