2016-09-06 3 views
-1

게임을 만들 때 각 작업의 배경 이미지 크기는 약 500kb입니다. 몇 가지 활동으로 구성되어 있으므로 뒤로 버튼을 누르면 원래의 상태로 돌아갑니다. 관련된 저장 상태는 없지만 여전히 메모리가 부족합니다. 메모리를 더 잘 관리하려면 어떻게해야합니까? 각 액티비티에는 배경 이미지와 1-2 개의 작은 이미지가 있습니다.Android 액티비티에서 큰 이미지를 처리하는 방법

xml에서 배경 이미지를 똑바로 설정합니다.

여기 모든 활동에 일반적으로 사용하는 onStop 메서드가 있습니다.

protected void onStop() { 
    super.onStop(); 
    LinearLayout layout = (LinearLayout) findViewById(R.id.bg); 
    ImageView imageView = (ImageView) findViewById(R.id.imageView6); 
    layout.setBackgroundDrawable(null); 
    imageView.setImageDrawable(null); 
    setContentView(new View(this)); 
} 
+0

첫 번째 단계는 너무 많은 품질에 영향을 미치지 않으면 서 가능한 한 이미지를 축소하는 것입니다. TinyPng은 훌륭한 결과를 제공해야하는 도구입니다. https://tinypng.com/ –

+0

너무 광범위하게 투표를하는 것은 좋지 않습니다. 왜냐하면 코드가 없기 때문에 모호한 답변 만 제공 할 수 있기 때문입니다. 하지만 LRUCache를 사용하여 모든 이미지에서 사용 된 메모리 양을 좋은 첫 번째 단계로 (닫힌 풀로 강제로) 제한하는 방법을 살펴 보겠습니다. 또한 매우 큰 이미지를 보유하고있는 액티비티가 LRU 캐시로 재생되는 액티비티를 표시 할 필요가 없을 때이를 해제해야합니다. –

+0

죄송합니다. 제가 만든 첫 번째 응용 프로그램입니다. 따라서 메모리 관리에 대해 많이 알지 못합니다. 어떻게 이미지를 공개합니까? 몇 분 안에 일부 코드를 게시하십시오. –

답변

0

이미지 축소를 시도하십시오. 이를위한 많은 온라인 편집 도구가 있습니다. 그림의 품질을 많이 손상시키지 않고 가능한 한 이미지를 축소하십시오. 행운을 빕니다.

관련 문제