반응형
안녕하세요 푸민입니다.
안드로이드 개발을 하다 보면 텍스트뷰 사용시 항상 걸리는 부분이 있습니다!
바로 단어개행!!!
예를 들어보면
아 배고파. 나중에 치맥 먹
으러 가자 알겠지?? 뭐라
고 싫다고?? ㅠㅠ
위와 같이 글자가 줄 끝에 있으면 다음 글자를 다음줄에 쓰는것이 바로 글자 개행! 우리 한글의 특징입니다. 그런데... 안드로이드에서는 어떻게 구현이 되냐면
아 배고파. 나중에 치맥
먹으러 가자 알겠지??
뭐라고 싫다고?? ㅠㅠ
이와 같이 단어가 그 줄에서 벗어날 정도로 길면 단어 자체가 다음줄로 넘어갑니다.
왜 이런 현상이 발생하는지 생각해보니
안드로이드는 기본적으로 우리나라만 사용하는 것이 아니라 세계적으로 사용합니다. 그래서 표준화를 시키는데 영어를 기준으로 만들어진것 같습니다. 그래서 영어의 단어 개행을 사용하는것 같네요.
어떻게 글자 개행을 할수 있나
그렇다면! 어떻게 해야 글자 개행을 할 수 있나 알아보겠습니다.
따로 한번에 설정할 수 있는 방법은 없기때문에 직접 텍스트 뷰를 만들어야 합니다.
그때 사용하는 것이 바로 Paint 객체의 breakText() 메소드입니다. 해당 메소드에 String 과 width 를 넣어주면 해당 길리 만큼을 넘어가는 문자의 index 를 반환해 줍니다. 그래서 0 부터 받은 index 까지의 문자가 첫번째 줄이 되는 형식입니다. 이런식으로 문자열을 잘라서 저장해 놓은 뒤에 화면에 순서대로 textHeight 만큼씩 띄우고 그려주면 됩니다.
추후에 글자 개행 텍스트뷰 만들어서 올리겠습니다~
반응형
'Development > Android' 카테고리의 다른 글
[안드로이드][JNI] C언어를 활용하는 JNI! 환경구성 (0) | 2015.10.26 |
---|---|
[안드로이드] WeekReference 에 대해서 (0) | 2015.10.25 |
[안드로이드] App이 설치된 날짜 불러오기 (0) | 2015.10.23 |
[안드로이드] 프로가드 적용하기! Proguard! (0) | 2015.10.22 |
[안드로이드] Android 국가코드 얻어오기 및 정렬 (0) | 2015.10.21 |
댓글