2014-09-30 55 views
-1

我有一個位圖陣列[photo1,photo2,photo3 .......],我想從數組中使用隨機位圖。我可以通過將位圖轉換爲字符串,然後將其用作字符串,然後改變最後的號碼?另外我希望鑄造的字符串是指數組中的位圖。如何將位圖轉換爲字符串?

+0

試試這個 - http://stackoverflow.com/questions/13562429/how-many-ways-to-convert-bitmap-to-string-and-vice-versa – 2014-09-30 08:50:06

回答

0

試試這個:

String resultStr = convertBitmapToString (bmp1); 

public String convertBitmapToString(Bitmap bitmap){ 
    ByteArrayOutputStream baos=new ByteArrayOutputStream(); 
    bitmap.compress(Bitmap.CompressFormat.PNG,100, baos); 
    byte [] b = baos.toByteArray(); 
    String bString = Base64.encodeToString(b, Base64.DEFAULT); 
    return bString; 
} 

你也可以看看:Convert String to Bitmap and Bitmap to String

希望這有助於。

+0

快速的問題:你爲什麼要將圖像轉換爲串? :) – 2014-09-30 08:52:01

+0

這不是他/她問的問題,再次閱讀問題;)*「我有一個位圖陣列,我想使用陣列中的隨機位圖」* – m0skit0 2014-09-30 08:52:24

+0

@ m0skit0看起來像一個XY問題 – 2014-09-30 08:52:41

1

你不能轉換一個位圖到一個字符串,即使你可以,這是沒有意義的,你想做什麼。如果你想從位圖數組隨機獲得一個位圖,你可以做如下:

final Random rnd = new Random(); 
final int randomIndex = rnd.nextInt(array.length); 
final Bitmap randomBitmap = array[randomIndex]; 

PS:在Java中你確實應該使用List s,而不是陣列。

0

爲什麼不生成一個隨機數來引用數組中的索引?

Random rand = new Random(); 
int randomIndex = rand.nextInt(bitmaps.length); 
Bitmap randomBitmap = bitmaps[randomIndex]; 
0

我懷疑他有一個圖和位圖的名字照片1,照片2 ...

[照片1,照片2,照片3 .......]

他想一種方法來生成一個隨機數,然後從數組(地圖)中獲取位圖。

HashMap<String,Object> bitMaps= new HashMap<String,Object>(); 
... 
Random rand = new Random(); 
int randomIndex = rand.nextInt(bitMaps.size()); 
Bitmap randomBitmap = bitmaps.get("photo"+randomIndex) + 1; 

對不起,如果我完全誤解了這個問題。