배경

2012-12-18 4 views
0

배경 : 나는 그리드 (2 × 3)으로 그리고 레이 아웃에 6 개 항목으로 구성 레이아웃을 가지고배경

. 모든 항목은 화면의 절반 크기 (각면에서 약간의 여백을 뺀 값)입니다. 각 항목의 길이는 ImageView (배경)이고 TextView (레이블) 인 RelativeLayout입니다. 라벨은 텍스트를 감싸도록 설정되어 있으며, 텍스트 위에 놓인 이미지와 거의 같은 크기로 자랄 수 있습니다. 그 후에 그것은 두 줄로 나뉩니다.

문제 : 텍스트를 한 줄 (그림에서 맨 위 요소 참조)에 맞는로

다만큼 좋아 보인다. 배경은 텍스트를 멋지게 감싸줍니다. 그러나 텍스트가 두 줄로 표시되면 배경이 너무 넓어집니다 (그림의 아래쪽 항목 참조). 첫 줄의 텍스트가 많은 공간을 차지하지 않더라도 최대 허용 너비를 채 웁니다. 한 줄만 사용하는 경우와 같은 방법으로 배경을 줄 바꿈하는 방법이 있습니까?

사진 :

screen_capture

레이아웃 XML : 이러한 문제의 가능성이 textSize 인의

<ImageView 
     android:id="@+id/item_image" 
     android:layout_width="fill_parent" 
     android:layout_height="fill_parent" 
     android:scaleType="centerCrop" /> 

    <!-- some stuff I had to remove... --> 

    <RelativeLayout 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:layout_alignParentBottom="true" 
     android:paddingBottom="11.33333dp"> 

     <!-- some other stuff I had to remove... --> 

     <!-- the gray background color is set to the TextView below programmatically together with the text itself. --> 
     <TextView 
      android:id="@+id/item_text_label" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_marginLeft="5.33333dp" 
      android:paddingLeft="7.33333dp" 
      android:paddingRight="20dp" 
      android:paddingTop="1dp" 
      android:paddingBottom="5.33333dp" 
      android:layout_alignParentRight="true" 
      android:gravity="right" /> 
    </RelativeLayout> 
</RelativeLayout> 

답변

0

하나.

설정하는 방법과 textSizeTextView을 설정하는 데 사용하는 측정 단위에 따라 다릅니다.

dp,sp,pt and in으로 인해 이러한 문제가 발생할 수 있습니다.

mm 또는 px과 같이 시도하십시오.

내 테스트에 따라 px은 최상의 결과를 제공합니다.

편집 : 당신의 TextView 레이아웃 파일

추가 다음 속성.

android:gravity="right" 

감사 대신의

android:gravity="right|start" 

.

+0

저는 현재 dp를 사용하고 있습니다. 대신 px로 시도했지만 전혀 차이가 없었습니다. :/ – TofferJ

+0

제 화면에서 차이점을 볼 수 있습니다.'dp' 또는'pt'를 사용하면 게시 한 것처럼 문제가 나타나지만'px'를 사용하면 완벽하게 작동합니다. –

+0

텍스트 너비를 측정하는 데 문제가있는 경우 한 줄로 된 레이블에 대해 동일한 문제가 발생하지 않습니까? 첫 번째 줄의 텍스트 너비가 아닌 너비가 두 번째 줄로 줄 때만 나타납니다. – TofferJ