2013-05-06 69 views
0
private void setupBitmaps() 
{ 
    BitmapFactory.Options opts = new BitmapFactory.Options(); 

    opts.inPreferredConfig = Bitmap.Config.ARGB_8888; 

    playImage = BitmapFactory.decodeResource(getResources(), R.drawable.play, opts); 
    pauseImage = BitmapFactory.decodeResource(getResources(), R.drawable.pause, opts); 
    selected = BitmapFactory.decodeResource(getResources(), R.drawable.button_pressed, opts); 
    previousImage = BitmapFactory.decodeResource(getResources(), R.drawable.previous, opts); 
    nextImage = BitmapFactory.decodeResource(getResources(), R.drawable.next, opts); 
} 

private Drawable scaleImage(Bitmap image, int newWidth, int newHeight) 
{ 
    Bitmap scaledBitmap=Bitmap.createScaledBitmap(image, newWidth, newHeight, true); 

    Drawable d = (new BitmapDrawable(scaledBitmap)); 

    return d; 
} 

我有一個問題,當我開始我的活動時,setBackgroundDrawable方法不能在按鈕上工作。它只是在按鈕上方顯示一個黑色區域。Android按鈕setBackgroundDrawable方法顯示黑色

現在這裏是奇怪的部分。我在點擊監聽器上調用相同的方法並顯示圖像。我沒有調整可繪製文件夾中的圖像的大小,所以我不知道這是否是問題所在。我嘗試了很多方法來解決這個問題,他們似乎沒有工作(他們不是很大的修復)。 日誌貓不會說一些事情,但:

05-06 09:51:25.489: W/OpenGLRenderer(22598): Unsupported bitmap config: 0 
+0

我有一個類似的問題。你解決了你的問題嗎? – bugfixr 2013-07-11 16:03:51

+0

是的,我做到了。對我而言,我使用的是一個Runnable,它調用設置的Background Drawable方法直到按鈕被繪製。 – teej 2013-08-04 04:58:50

回答

0

試試這個:

opts.inPreferredConfig = Bitmap.Config.kARGB_8888; 
+0

這種方式只是一個錯誤。它不承認kARGB_8888,但我嘗試了其他所有顯示但仍然沒有運氣的人。 – teej 2013-05-07 01:09:13