Android создает растровое изображение из рисования для просмотра больше экрана
Я использую Bitmap b = Bitmap.createBitmap(mView.getDrawingCache());
для создания изображения с моей точки зрения, чтобы я мог чем поделиться им. Он работает отлично, но когда mView больше, чем экран телефона, я получаю исключение нулевого указателя:
java.lang.NullPointerException: Attempt to invoke virtual method 'int android.graphics.Bitmap.getWidth()' on a null object reference
Кто-нибудь знает, как это исправить?
1 ответ
Решение
Поэтому я не нашел способа обойти эту ошибку, поэтому я создал изображение другим способом (рисуя на холсте):
int w = mView.getWidth();
int h = mView.getHeight();
Bitmap result = Bitmap.createBitmap(w, h, Bitmap.Config.ARGB_8888);
Canvas canvas = new Canvas(result);
mView.draw(canvas);
Надеюсь, что это помогает любому с той же проблемой.