我在擴展表面視圖並實現可運行的類中擁有此代碼 我能夠使用該類基本上允許您使用不同的顏色等繪製到畫布。我試圖找到一種方法,可以讓我在繪製圖像後保存圖像,這是方法。不管我做什麼,我只是得到一個沒有任何東西的黑色圖像。有任何想法嗎?從自定義SurfaceView獲取位圖
我有緩存繪製有效
目的從自定義SurfaceView我已經用盡的看着這裏上一些其他的選項後,並沒有發現任何工作得到位圖圖像。希望最近有一個新的解決方案。非常感謝
public Bitmap getImage() {
Bitmap bitmap = Bitmap.createBitmap(this.getWidth(),
this.getHeight(), Bitmap.Config.ARGB_8888);
Canvas canvas = new Canvas(bitmap);
this.draw(canvas);
return bitmap;
}
你有什麼期望'this.getWidth()'和'this.getHeight()'給? –
您正在創建一個新的位圖,它沒有任何內容。然後,您從該空白位圖創建一個畫布。你還沒有做任何繪畫,你怎麼能期待一個繪畫?請注意:如果您重寫SurfaceView的onDraw()方法,請確保在您的類構造函數中調用'setWillNotDraw(false)'。 –
我預計會得到表面寬度和高度,因爲這是我正在擴展的類。 –