2011-02-18 1 views
9

홀수/짝수 요소에 대해 배경 이미지가 번갈아 표시되는 을 사용하는 상대 레이아웃이있는 목록보기 구조가 있습니다. 위치를 계산하여 동적 drawable 배경을 설정하려고합니다. 그것은 정상적인 비트 맵으로 잘 일했습니다. 그러나 ninepatch 이미지를 사용하려고하면 UI가 깨지고 모든 요소가 왜곡됩니다. 무엇이 내가 잘못 했나요? 9 패치 이미지가 어떻게 생성되는지 또는 비트 맵과 비교하여 9 패치 이미지를 사용하는 다른 방법이있을 수 있습니다.배경으로 9 패치 이미지에 문제가 있습니다.

내 목록보기 XML 내 문제에 대한 작업을 수있는 솔루션 here 수 있음이

<?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="wrap_content" android:id="@+id/id01" 
     android:background="@drawable/my_9patch_bg_image"> 
     <ImageView /> 
     <RelativeLayout> 
     <ImageView /> 
      <TextView /> 
      <TextView /> 
     </RelativeLayout> 
</RelativeLayout> 

처럼 간다. 내가 그것을 시도해야하지만 그것은 정확하다.

+0

당신은 9 패치를 심하게-형식의 한 할 수 있습니까? –

+0

9 가지 패치 이미지의 다양한 변형을 시도해 보았습니다. 그러나 첫 번째 RelativeLayout 내의 내용은 특정 목록보기 작업이 끝나면 사라집니다. 정상적인 비트 맵 이미지로 잘 작동합니다. –

+0

무슨 일이 일어나고 있는지, 어떤 일이 일어나기를 바라는지, 9 패치가 무엇인지에 대한 스크린 샷을 통해 사람들은 문제가 무엇인지 판단 할 수 있습니다. – ChrisJD

답변

0

일반 드로어 블을 사용하는 것과 같은 방법으로 9 가지 패치를 사용할 수 있습니다. 9 패치 자체에 문제가 있다고 가정합니다. 안드로이드 SDK의/tools 디렉토리에는 9 개의 패치 도구가 있습니다. 9 패치 드로어 블을 수정하고 다양한 크기의보기를 미리 볼 수 있습니다.

+0

이미지를 draw9patch 도구. 다른 유사 콘텐츠를 시도했지만 작동하지 않았습니다. 이미지가 (+ x, -y) 방향으로 축척된다면 그려야 할 이상적인 방법은 무엇입니까? –

32

아무도 지금 1 년 동안 당신에게 대답하지 않았으므로 ... 나는 (당신이 그것을 필요로하지 않는다하더라도) 0의 setpadding에 필요한 동일한 문제가있었습니다.

행운을 비네.

+0

것은 것을한다! –

+0

감사합니다 !!!! 그것은 작동! –

+0

이 답변은 수락 된 것으로 표시되어야합니다. 어쨌든 +1 할 수 있습니다 :) 감사합니다 !!! 이 작품 – Zoombie

0

연신 가장자리

0

당신이 cardview로 표시하는 배경으로이 XML을 사용할 수있는 등의 코너를 제외한 모든면을 선택합니다.

<?xml version="1.0" encoding="utf-8"?> 
<layer-list xmlns:android="http://schemas.android.com/apk/res/android"> 
<item> 
    <shape android:dither="true" android:shape="rectangle"> 
     <corners android:radius="2dp" /> 
     <solid android:color="#e2e2e2" /> 
    </shape> 
</item> 
<item android:bottom="2dp"> 
    <shape android:dither="true" android:shape="rectangle"> 
     <corners android:radius="2dp" /> 
     <solid android:color="@color/white" /> 
    </shape> 
</item>