2011-09-28 2 views
5

여러 화면 지원을 원하는 안드로이드 응용 프로그램을 만들고 있습니다.이 중 9 패치 이미지를 사용했습니다.다른 2 밀도 (예 : mdpi, ldpi, hdpi)에 대해 안드로이드에서 9 가지 패치 이미지를 사용하는 방법.

그러나 내 질문은 9 개의 패치 이미지를 사용하면 다른 2 밀도의 장치에 충분할지 또는 다양한 밀도 (예 : mdpi, ldpi, hdpi)로 다른 2 9 패치 이미지를 만들어야하는지 여부입니다. 문서에서 사전

+1

[9 패치를 사용하는 방법 안드로이드 PNG (http://adilsoomro.blogspot.com/2012/11/android-how-to-use-9-patch-png.html) –

답변

17

당신은 아홉 패치

예, 9 패치 이미지를 확장 할 수 ... 서로 다른 화면 크기 사이에서 확장 할 수 , 그것이 그들이 존재하는 것입니다. 그러나 모든 화면 밀도에 대해 9 패치 이미지를 사용해야하는 경우 이미지에 따라 다릅니다. 예를 들어 버튼과 같이 9 패치 이미지가 더 일반적으로 사용됩니다. 앱에 서로 다른 크기의 버튼을 가질 수 있으며 9 패치 이미지가 제대로 만들어져있는 한 버튼의 크기에 관계없이 9 패치 이미지가이를 처리하는 데 도움이됩니다.

하지만 버튼 디자인에 hdpi 버전의 모서리가 있습니다. 모서리를 엉망으로 만들지 않고 9- 패치 이미지를 만들지 만 ldpi 버전에서 보았을 때, 저해상도에서 구석이 너무 크다는 것을 깨닫게됩니다. 이 경우 둥근 모서리가 적은 다른 9 패치 이미지가 필요합니다.

최종 답변은 이미지에 달려 있습니다. 모든 농도를 잘 처리 할 수있는 9 패치 이미지를 만들 수 있다면 모든 농도를 처리하기 위해 하나의 이미지 만 필요하기 때문에 모든 농도에서 잘 보이는 9 패치 이미지를 만들 수 있습니다. 그러나 모서리, 그라디언트 등으로 인해보기가 좋지 않으면 각 화면 밀도에 대해 하나의 9 패치 이미지가 필요합니다.

잘하면 지금은 분명합니다.

+0

이미지가 일반 PNG 및 9patch PNG가 아닌 경우 이미지의 크기가 조정됩니까 또는 모든 저울 기능에 대한 실제 하드 요구 사항이 있습니까? – Vass

+1

@Vass 이미지의 크기가 이미지의 크기보다 큰 경우 이미지의 크기가 조정됩니다. 그러나 9 개의 패치 이미지가 riping에서 저장하는 데 사용됩니다. – AB1209

+0

@ AB1209, "riping에서 절약"이 무슨 뜻인지 말해 줄 수 있습니까? – Vass

2

에서

감사 : nine patch NinePatchDrawable 그래픽은 안드로이드가 자동으로 뷰의 내용을 수용하기 위해 크기를 조정하는 신축성 비트 맵 이미지가있는 당신은으로 놓여있다한다

배경. NinePatch의 사용 예는 표준 Android 버튼에서 사용되는 배경입니다. 버튼은 다양한 길이의 문자열을 수용하기 위해 늘어나야합니다. NinePatch 드로어 블은 1 픽셀 너비의 테두리가 추가 된 표준 PNG 이미지입니다. .9.png 확장자로 저장해야하며 프로젝트의 res/drawable/디렉토리에 저장해야합니다.

대답은 없습니다. 나는 최근에 너무 날에 피치 이미 밝혔다 된 내용을 확장하자 같은 상황에서 자신을 발견

+4

그 완전히 정확하지 않습니다. 예, ninepatch는 크기가 조정되지만 크기가 조정되지 않은 부분도 올바른 크기를 가져야하므로 ldpi/mdpi/hdpi 이미지를 제공해야합니다. –

+0

그러나 다른 2 밀도는 어떻습니까? 높고 낮은 밀도의 9 페이지 이미지도 만들어야합니까? – AB1209

+4

@ AB1209 NinePatch 부품의 확장 성이 좋지 않다면 그렇게하지 않아도됩니다. – rf43

0

짧은 대답은 '예'입니다. 확인이 기본적으로

는, 안드로이드는 비트 맵 드로어 블 (.png, .jpg.gif 파일)과 나인 패치 드로어 블 (.9.png 파일) 그래야 각 장치의 적절한 실제 크기로 렌더링을 확장 할 수 있습니다. 예를 들어, 응용 프로그램이 기본 화면 밀도 (mdpi) 인 에 대해서만 비트 맵 드로어 블을 제공하는 경우 시스템은 고밀도 화면 인 인 경우 크기를 조정하고 저밀도 화면에서는 소수점의 크기를 조정합니다. 이 크기 조정은 비트 맵 에 아티팩트를 일으킬 수 있습니다. 비트 맵을 최상으로 보이게하려면 다른 화면 밀도에 대해 다른 해상도로 대체 버전을 포함해야합니다.

from Android Developer Official Doc