Android
[Android] TextView breakStrategy 속성에 대하여 - 긴 글 줄 바꿈 규칙
elisom
2022. 4. 22. 15:59
TextView에 긴 글을 출력할 때, 줄 바꿈 규칙을 정하는 breakStrategy 라는 속성이 있다.
breakStrategy에는 balanced, high_quality, simple 세 가지의 값이 올 수 있으며
예제 코드로 이 값들이 어떻게 적용되는지 확인해본다 👩🔬
1. android:breakStrategy="simple"
가장 간단한 정책으로, 줄을 벗어나는 단어는 다음 줄에 출력한다.
<TextView
android:id="@+id/description_text_view"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_margin="10dp"
android:breakStrategy="simple"
android:text="TextView"
android:textColor="@color/white"
android:textSize="20sp" />
2. android:breakStrategy="high_quality"
자동으로 하이픈을 사용해 출력한다.
<TextView
android:id="@+id/description_text_view"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_margin="10dp"
android:breakStrategy="high_quality"
android:text="TextView"
android:textColor="@color/white"
android:textSize="20sp" />
breakStategy 속성만을 이용하면 simple과 high_quality가 같은 형태이고,
hyphenationFrequency 속성을 추가하면 자동으로 하이픈을 추가하여 긴 문장 출력을 한다고 하는데...
<TextView
android:id="@+id/description_text_view"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="10dp"
android:breakStrategy="high_quality"
android:hyphenationFrequency="full"
android:text="TextView"
android:textColor="@color/white"
android:textSize="20sp" />
위 코드로 테스트해본 결과 하이픈은 생기지 않았다 😫
3. android:breakStrategy="balanced"
각 줄들의 길이를 균형 있게 맞추어 출력한다.
<TextView
android:id="@+id/description_text_view"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_margin="10dp"
android:breakStrategy="balanced"
android:text="TextView"
android:textColor="@color/white"
android:textSize="20sp" />
전체적인 줄들의 길이가 평균치에 맞춰져 있어 길이가 고른 것을 볼 수 있다.
Ref.