android利用Bitmap加載圖片所遇到的一個奇怪的OOM問題java.lang.OutOfMemoryError


04-16 11:33:40.160: E/AndroidRuntime(18377): FATAL EXCEPTION: main
04-16 11:33:40.160: E/AndroidRuntime(18377): java.lang.OutOfMemoryError
04-16 11:33:40.160: E/AndroidRuntime(18377):    at     android.graphics.Bitmap.nativeCreate(Native Method)
04-16 11:33:40.160: E/AndroidRuntime(18377):    at     android.graphics.Bitmap.createBitmap(Bitmap.java:604)
04-16 11:33:40.160: E/AndroidRuntime(18377):    at     android.graphics.Bitmap.createBitmap(Bitmap.java:551)
04-16 11:33:40.160: E/AndroidRuntime(18377):    at     com.android.restaurant.DescriptionPage.getResizedBitmap(DescriptionPage.java:327)
04-16 11:33:40.160: E/AndroidRuntime(18377):    at         com.android.restaurant.DescriptionPage.setDetailsIntoLayout(DescriptionPage.java:172)
04-16 11:33:40.160: E/AndroidRuntime(18377):    at com.android.restaurant.DescriptionPage.onCreate(DescriptionPage.java:101)
04-16 11:33:40.160: E/AndroidRuntime(18377):    at android.app.Activity.performCreate(Activity.java:4397)
04-16 11:33:40.160: E/AndroidRuntime(18377):    at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1048)
04-16 11:33:40.160: E/AndroidRuntime(18377):    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1782)
04-16 11:33:40.160: E/AndroidRuntime(18377):    at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1834)
04-16 11:33:40.160: E/AndroidRuntime(18377):    at android.app.ActivityThread.access$500(ActivityThread.java:125)
04-16 11:33:40.160: E/AndroidRuntime(18377):    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1027)


后來發現用來充當背景的
pagefactory.setBgBitmap(BitmapFactory.decodeResource(
                this.getResources(), R.drawable.bg));
這個圖片太大了,改成小一點的圖片,沒有問題了。
另外查資料別人也提出用BitmapFactory.decodeFile()方法來加載,明天試試看~~~


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM