2011-07-24 11 views
9

DlaczegoAndroid Bitmap.createBitmap() przekazujących bitmapę -1 dla wysokości i szerokości

Bitmap bmp; 
bmp = Bitmap.createBitmap(100, 100, Config.RGB_565); 

kiedykolwiek wrócimy bitmapę o wysokości i szerokości -1? Nic nie widzę w dokumentacji na ten temat. zobaczyć tylko w documentation

Zgłasza

IllegalArgumentException jeśli szerokość lub wysokość są < = 0

Ale podczas debugowania w Eclipse widzę szerokość i wysokość są -1 po kreacja. Wszystko wydaje się poprawnie wyświetlane.

[Aktualizacja]

Jeśli dodać dziennik i uzyskać szerokość i wysokość

Log.i(logTag, "bmp - (width,height) (" + bmp.getWidth() + "," + bmp.getHeight() + ")"); 

Następnie spojrzeć na właściwości bitmapy, prawidłowa szerokość i wysokość są pokazane (I” m przy założeniu, że każde wezwanie do odczytu szerokości i wysokości po stworzeniu zaktualizuje właściwości w czasie zaćmienia i będzie poprawnie wyświetlane).

Zgaduję, że to tylko kwestia debuggera? Debuguję mojego starego Droida.

Odpowiedz

7

Czy jesteś w sytuacji, w której jest to problem? Lub tylko ciekawy, dlaczego są one -1?

Tak czy inaczej, nie jest to problem z debugowaniem, właściwości są w rzeczywistości -1. To tylko spekulacja, ale do momentu użycia/narysowania bitmapy szerokość i wysokość może wynosić -1, ponieważ nie ma to znaczenia i jest prawdopodobnie optymalizacją w implementacji.

+0

To nie problem, tylko ciekawiło mnie, dlaczego to -1. To ma jednak sens. Dzięki! – Jerinaw

Powiązane problemy