这是我的图像视图
<ImageView
android:id="@+id/ads"
android:layout_width="320dp"
android:layout_height="48dp"
android:adjustViewBounds="true"
android:src="@drawable/my_img" />
如果 my_img 是 3200 像素 x 480 像素。
我的 ImageView 会泄漏吗?
谢谢
这是我的图像视图
<ImageView
android:id="@+id/ads"
android:layout_width="320dp"
android:layout_height="48dp"
android:adjustViewBounds="true"
android:src="@drawable/my_img" />
如果 my_img 是 3200 像素 x 480 像素。
我的 ImageView 会泄漏吗?
谢谢
内存泄漏通常发生在某些比您的寿命更长的对象Activity
保留对您的图像、您的ImageView
或Activity
. 所以,如果你避免这种情况,你应该没问题。
附带说明一下,在 Gingerbread 及更高版本上,3200 像素 x 480 像素在解码时将占用大约 6MB 的内存(3200 * 480 * 4 字节/像素 = 大约 5.8MB [来源])。即使在非常旧的设备上,这也不足以让您面临内存配额不足的危险,假设事情正在得到适当的清理。此外,当您知道不再需要位图时,礼貌地调用Bitmap.recycle() 会很有帮助(但请记住,这只是清理位图的建议,不会立即发生)。