반응형
TextView의 maxLines와 ellipsize를 동시에 설정하는 방법
텍스트보기를 최대 5 줄로 제한하고 싶습니다.
<TextView
android:id="@+id/text"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:maxLines="5" />
하지만 텍스트가 잘릴 때 '...'를 추가하도록 구성하려고하면 android : ellipsize = "end"를 추가합니다. 나는 ...하지만 내 TextView에는 5 대신 최대 2 줄만 있습니다.
최대 5 줄의 텍스트보기를 만들고 잘릴 때 '...'를 추가하는 방법을 제안 해 주시겠습니까?
감사합니다.
점진적으로 다음을 사용할 수 있습니다.
your_text_view.setEllipsize(TextUtils.TruncateAt.END);
your_text_view.setMaxLines(4);
your_text_view.setText("text");
이 코드를 사용해보십시오 ...
final TextView tv_yourtext = (TextView)findViewById(R.id.text);
tv_yourtext.setText("A really long text");
ViewTreeObserver vto = tv_yourtext.getViewTreeObserver();
vto.addOnGlobalLayoutListener(new OnGlobalLayoutListener() {
@Override
public void onGlobalLayout() {
ViewTreeObserver obs = tv_yourtext.getViewTreeObserver();
obs.removeGlobalOnLayoutListener(this);
if(tv_yourtext.getLineCount() > 6){
Log.d("","Line["+tv_yourtext.getLineCount()+"]"+tv_yourtext.getText());
int lineEndIndex = tv_yourtext.getLayout().getLineEnd(5);
String text = tv_yourtext.getText().subSequence(0, lineEndIndex-3)+"...";
tv_yourtext.setText(text);
Log.d("","NewText:"+text);
}
}
});
이 줄을 TextView에 추가하기 만하면됩니다.
android:ellipsize="marquee"
이 경우에는를 지정하고 inputType
로 설정해야합니다 none
. 다음과 같이 보일 것입니다.
<TextView
android:ellipsize="end"
android:inputType="none"
android:maxLines="2"
같은 질문이 있습니다 android ellipsize multiline textview 이것은 알려진 버그이며 꽤 오래되었으며 아직 수정되지 않았습니다.
누군가가 해결 방법을 게시했습니다. http://code.google.com/p/android-textview-multiline-ellipse/ 아마도 도움이 될 것입니다 (또는 다른 사람)
TextView 높이를 상수 값 (예 : 50dp)으로 설정하면 잘 작동합니다.
<TextView
android:id="@+id/text"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:maxLines="5"
android:ellipsize="end" />
나를 위해 작동합니다. TextView 상단 컨테이너의 높이가
android:layout_height="wrap_content"
반응형
'programing' 카테고리의 다른 글
열 필드에 대해 두 행의 차이를 얻는 방법은 무엇입니까? (0) | 2021.01.14 |
---|---|
C ++에서 이름으로 프로세스 핸들을 얻으려면 어떻게해야합니까? (0) | 2021.01.14 |
Android의 인 텐트 필터 란 무엇입니까? (0) | 2021.01.14 |
Objective C에서 속성 이름 앞에 밑줄 추가 (0) | 2021.01.14 |
소프트웨어 스레드 대 하드웨어 스레드 (0) | 2021.01.14 |