【发布时间】:2014-09-18 15:01:06
【问题描述】:
我的应用程序提供了一个自定义视图,它通过 onDraw() 方法在显示屏上绘制一些大形状。我的意图是将这个大画布转换为位图,但如果我使用 createBitmap() 方法,传递 canvas.getWidth()、canvas.getHeight() 参数,我会收到由创建位图 (OutOfMemory) 引起的运行时异常。
我该如何解决这个问题?有什么建议吗?
【问题讨论】:
我的应用程序提供了一个自定义视图,它通过 onDraw() 方法在显示屏上绘制一些大形状。我的意图是将这个大画布转换为位图,但如果我使用 createBitmap() 方法,传递 canvas.getWidth()、canvas.getHeight() 参数,我会收到由创建位图 (OutOfMemory) 引起的运行时异常。
我该如何解决这个问题?有什么建议吗?
【问题讨论】:
尝试在清单文件中指定 android:largeHeap="true" 示例
<application
android:name=".MyApplication"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:screenOrientation="nosensor"
android:largeHeap="true"
【讨论】: