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" アンドロイド:layout_height = "16dp"' '.Removeアンドロイド:ellipsize = "終了"' –

+0

テキストは、灰色の丸背景内に表示されなければなりません? – Saneesh

+0

@IntelliJAmiyaしかし、それは少し醜いデザインになります。低いTextViewは大きく見えます。 TextViewをカウンタとして使用したい。 – XoXo

答えて

1

削除アンドロイド:ellipsize = "終了" と単一行を追加し

<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

関連する問題