2017-09-21 4 views
1

TextView과 함께 이상한 문제가 있습니다. 텍스트가 너무 길면 내용이 왼쪽으로 이동하고 점 만 보입니다. 여기 내 레이아웃 코드입니다.긴 텍스트가 안드로이드의 텍스트보기에서 왼쪽으로 이동

<RelativeLayout 
       android:layout_width="30dp" 
       android:layout_height="30dp" 
       android:layout_alignParentEnd="true" 
       android:layout_centerVertical="true"> 

       <ImageView 
        android:id="@+id/coinIcon" 
        android:layout_width="30dp" 
        android:layout_height="30dp" 
        android:paddingRight="2dp" 
        android:paddingBottom="2dp" 
        android:layout_centerHorizontal="true" 
        android:layout_centerVertical="true" 
        app:srcCompat="@drawable/ic_single_coin" 
        tools:ignore="MissingPrefix" /> 

       <TextView 
        android:id="@+id/prizeSize" 
        android:layout_width="13dp" 
        android:layout_height="13dp" 
        android:layout_centerInParent="true" 
        android:layout_alignParentBottom="true" 
        android:layout_alignParentEnd="true" 
        android:background="@drawable/circular_background" 
        android:ellipsize="end" 
        android:focusable="true" 
        android:focusableInTouchMode="true" 
        android:freezesText="true" 
        android:gravity="center" 
        android:marqueeRepeatLimit="marquee_forever" 
        android:maxLines="1" 
        android:padding="1dp" 
        android:scrollHorizontally="true" 
        android:textColor="#fff" 
        android:textSize="6sp" 
        tools:text="100" 
        android:maxEms="20"/> 
      </RelativeLayout> 

이 텍스트는 적합합니다.

enter image description here

텍스트를 제거합니다

enter image description here

당신은 텍스트가 현재 TextView 피팅되어 볼 수 있듯이. 그러나 텍스트가 커지면서 도트 (..)는 볼 수만 있습니다. 그 작은 크기로 텍스트를 보여주는 가장 좋은 해결책은 무엇일까요?

+1

android : layout_width = "16dp" android : layout_height = "16dp"'. android : ellipsize = "end"' –

+0

회색 바탕에 텍스트를 표시해야합니까 ?? – Saneesh

+0

@IntelliJAmiya하지만 그 디자인을 좀 못생긴 것입니다. 낮은 TextView는 더 커 보입니다. 나는 그 TextView를 카운터로 원한다. – XoXo

답변

1

제거 안드로이드 : ellipsize = "말"과 만일 Singleline을 추가

<TextView 
    android:id="@+id/prizeSize" 
    android:layout_width="13dp" 
    android:layout_height="13dp" 
    android:layout_alignParentBottom="true" 
    android:layout_alignParentEnd="true" 
    android:layout_alignParentRight="true" 
    android:background="@drawable/circular_background" 
    android:focusable="true" 
    android:focusableInTouchMode="true" 
    android:freezesText="true" 
    android:gravity="center" 
    android:marqueeRepeatLimit="marquee_forever" 
    android:maxLines="1" 
    android:scrollHorizontally="true" 
    android:textColor="#fff" 
    android:textSize="6sp" 
    tools:text="100" 
    android:singleLine="true" 
    android:maxEms="3"/> 
+0

didnt work. 'android : ellipsize = "end"를 제거하면 나를 위해 일했다. – XoXo

+1

'singleLine'은 더 이상 사용되지 않습니다. 'maxLines'가 사용됩니다. – XoXo

1

사용 BadgeHolderView 라이브러리 .. 여기 간단하게이

하여 코드를 대체 링크

https://github.com/steelkiwi/BadgeHolderView?utm_source=android-arsenal.com&utm_medium=referral&utm_campaign=6029

입니다 사실이다
<com.steelkiwi.library.view.BadgeHolderLayout 
     android:id="@+id/view" 
     android:layout_width="40dp" 
     android:layout_height="40dp" 
     android:layout_centerInParent="true" 
     app:bhl_default_badge_background="@color/color3" 
     app:bhl_text_color="@android:color/white" 
     app:bhl_text_size="12sp" 
     app:bhl_badge_radius="10dp" 
     app:bhl_text_font="Pacifico.ttf"> 

     <ImageView 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      app:srcCompat="@drawable/test_drawable"/> 
    </com.steelkiwi.library.view.BadgeHolderLayout> 
+0

이것을 위해 도서관을 포함시키지 않는 것이 좋습니다. 어쨌든 @IntelliJAmiya 솔루션이 나를 위해 일했습니다. – XoXo

관련 문제