2017-12-20 10 views
1

TextViewandroid:ellipsize을 적용했을 때 TextView에 보이는 문자 수를 얻고 싶습니다. "멀티 라인이있는 더미 탑 스토리 타이틀입니다. 멀티 라인의 더미 스토리입니다."라고 가정 해 봅시다. 텍스트와 나는 내 Textview"android:ellipsize="end" android:maxLines="2"" 이러한 속성을 설정 했으므로 일부 텍스트를 줄이고 3 개의 점을 표시합니다. 이제 나는 눈에 보이는 문자의 수를 원해. 만일 Singleline TextView의 경우줄임표 적용시 텍스트 뷰에서 보이는 문자 수를 가져옵니다.

+0

문제를 간단히 설명해주십시오. 관련 스크린 샷을 게시 할 수도 있습니다. 따라서 –

+0

을 사용해보십시오. https://stackoverflow.com/a/15567519/8089770 –

답변

0
  • :

    stringLength - textView.length()

표시하거나 멀리 장치 ellipsized하지 얼마나 많은 텍스트 줄 것입니다. 당신이 사용할 수있는 TextView 여러 줄의 경우

  • 같은 방법 :

    레이아웃 textViewLayout = textview.getLayout();

    textViewLayout.getEllipsisCount (textViewLayout.getLineCount() - 1) 문서 당으로서

developer.android.com

getEllipsisCount(int line) 

Returns the number of characters to be ellipsized away, or 0 if no ellipsis is to take place. 

에서 참고 :getEllipsisCount가 텍스트 뷰 후에 사용해야 그린/보인다.

+0

textview.getLayout(); 여기에 null이 반환됩니다. –

+0

문자열 값이 약 8000-9000 자와 같이 너무 크면'textViewLayout.getEllipsisCount (textViewLayout.getLineCount() - 1)'이 0을 반환합니다. –

관련 문제