我是新來開發android應用程序。我正在製作一個簡單對象移動的應用程序。問題與背景有關。當我把這樣的代碼:背景圖片減慢Android應用程序
protected void onDraw(Canvas canvas) {
BackGround1 = BitmapFactory.decodeResource(getResources(), R.drawable.lightning1);
canvas.drawBitmap(BackGround1, 0, 0, null);
canvas.drawCircle(xp, yp, circleRadius, circlePaint);
}
運動物體(圈子)減慢顯著,一段時間後(如20秒),那裏開始出現從圈,之後的痕跡(約10秒),它「崩潰「並回到之前的活動。
如果我把
canvas.drawColor(Color.BLACK);
而不是
canvas.drawBitmap(BackGround1, 0, 0, null);
然後一切工作正常。 lightning1是480x800 jpg圖片。
誰能告訴我我做錯了什麼?
04-11 02:00:50.722: ERROR/dalvikvm-gc(13262): Could not create 1097728-byte ashmem mark stack: Too many open files
04-11 02:00:50.722: ERROR/dalvikvm-heap(13262): dvmHeapBeginMarkStep failed; aborting
04-11 02:00:50.722: ERROR/dalvikvm(13262): VM aborting
04-11 02:00:50.902: ERROR/ActivityManager(92): fail to set top app changed!
如果發生崩潰,請發佈logcat。 – user432209 2011-04-10 22:52:05
04-11 02:00:50.722:ERROR/dalvikvm-gc(13262):無法創建1097728字節的ashmem標記堆棧:打開的文件過多 04-11 02:00:50.722:ERROR/dalvikvm-heap(13262 ):dvmHeapBeginMarkStep失敗;正在中止 04-11 02:00:50.722:錯誤/ dalvikvm(13262):VM正在中止 04-11 02:00:50.902:錯誤/ ActivityManager(92):無法設置頂級應用程序已更改! ,那是我認爲的錯誤代碼 – randomUser56789 2011-04-10 23:04:50