2011-12-08 3 views
0

9patch 배경을 가진 상대적 레이아웃 위에 텍스트가있는 ImageView를 그려야합니다.안드로이드는 ImageView의 일부만 그립니다.

layout on phone

내가 문자열에서 불과 3 특성을 보인다 : 전화

layout in editor

: 편집기에서

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:background="@drawable/splash_last" > 

<ImageView 
    android:id="@+id/imageView2" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_alignParentBottom="true" 
    android:layout_centerHorizontal="true" 
    android:src="@drawable/appnameimg" > 
</ImageView> 

</RelativeLayout> 

나는이 있습니다.

내 실수는 어디에서 왔습니까?

UPD

이 배경 및 텍스트 이미지입니다. "나쁜"9patch 때문일 수 있습니까? link to images

+0

당신이 다운로드 할 수있는 텍스트 이미지를 공유 할 수 더 나은 여기에서 당신에 맞게 수 있으며 내가 그것을 시도 할 수 있습니다 다른 옵션 중 하나 ? – havexz

+0

실행중인 버전은 무엇입니까? 또한 이미지 파일을'drawable-hdpi' 폴더에만 넣었습니까? – havexz

+0

나는 hdpi 자원 만 갖고있다. 내 안드로이드 버전 2.2 – Vbif

답변

1

문제를 재현 할 수 있습니다. 9 패치를 정의하려는 방식이 문제인 것처럼 보입니다. 한 모서리가 신축성이 없어서 불가능합니다. this doc에 따르면, 늘릴 영역은 왼쪽 및 위쪽의 한 픽셀 검은 색 선의 교차점입니다. 이 정의를 사용하면 코너를 비 신축성으로 정의 할 수 없습니다. 9 패치를 제거하면 두 이미지가 모두 정상적으로 보입니다.

+0

이미지가 디스플레이의 오른쪽으로 이동하고 비늘이 – Vbif

+0

수 있습니다 내 APK 테스트 해봐? http://www.4shared.com/android/-nn3Qp-R/Compliment4U.html? – Vbif

+0

나는 그저 당신에게 틀린 배경 이미지를 주었다는 것을 알아 차렸다. 이 이미지를 배경으로 그리는 데 문제가 있습니다. https://imgur.com/YvgSc – Vbif

0

ImageView 컨테이너 내부에서 이미지의 크기를 조정하는 방법을 정의해야합니다.

XML에 android : scaleType = "fitCenter"를 설정하여 이미지를 목록보기에 가운데 놓고 컨테이너 내부에 맞 춥니 다.

Ex.

<ImageView 
    android:id="@+id/imageView2" 
    android:scaleType="fitCenter" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_alignParentBottom="true" 
    android:layout_centerHorizontal="true" 
    android:src="@drawable/appnameimg" > 
</ImageView> 

또는 ImageView.ScaleType

+0

결과가 같습니다. – Vbif