2012-01-07 5 views
1

2.3 장치안드로이드 4 (ICS)와 비트 맵 폭 및 높이 잘못된 안드로이드 2.2

BitmapFactory.decodeResource(getResources(), R.drawable.my_original_drawable); 

는 소스보다는 완전히 동일한 크기를 갖는 비트 맵을 생성한다. Android 4 (ICS)가 탑재 된 Galaxy Nexus에서 생성 된 비트 맵은 항상 너무 큽니다. 비록 그렇게해서는 안되지만 축소됩니다.

큰 문제입니다. 누구도 똑같은 경험을 했습니까?

+0

저, 중 및 고 픽셀 밀도를 위해 3 개의 폴더에 모두 소스 파일을 넣었습니까? – dan

+0

아니오 drawable-hdpi에는 하나의 버전 만 있습니다. – mseo

+1

copypaste 다른 것, 어쩌면 도움이 될 것입니다. – dan

답변

1

똑같은 문제는 경험이 있고 ICS에서만 발생합니다.

내 해결 방법은 원시 스트림을 얻고 난이 꽤 늦게 답장을 알고

InputStream inputStream = context.getResources().openRawResource(largePhotoDrawableId) 
BitmapDrawable photo= null; 
photo= new BitmapDrawable(resources,inputStream); 
1

이 시도 :

넣어 소스 파일을 "고해상도/당김-xhdpi /"폴더 또는 "고해상도/당김-sw720dp /"폴더에 많은 도움을

이 링크를 읽어 http://developer.android.com/guide/practices/screens_support.html

행복한 코딩

+0

올바른 방향 ...하지만 난 내 애플 리케이션의 크기를 크게 증가 것이 모든 해상도에 대한 그래픽을 만들어야 할 것입니다. – mseo

1

을 BitMapDrawable로 변환했다, 그러나 나는이 같은 문제를했고 해결 한 이후 난 당신이 알려 드리고자합니다 . 이 문제에 대한 해결책은 drawable-xhdpi, hdpi, mdpi ... 등과 같이 모든 리소스를 해당 폴더에 저장하는 것입니다.

모든 화면 밀도에 대해 동일한 자원을 사용하려면 drawable-nodpi에 넣으십시오. 이렇게하면 모든 장치가 자원을 그대로 사용하게됩니다.

일반 drawable로 유지하면 기본값이 mdpi이고 높은 dpi를 가진 모든 장치가 리소스를 확대하여 화면에 맞 춥니 다.

희망 하시겠습니까?)

+0

+1에 대한 -nodpi 팁 – Niels