본 글은 [깡샘의 안드로이드 프로그래밍 - 루비페이퍼] 의 내용을 발췌한 것입니다.
좀더 자세한 내용은 책을 통해 확인해 주세요.
3장. 사용자 인터페이스
3.3.1. TextView
TextView는 앱을 개발할 때 가장 많이 사용하는 뷰로, TextView에 대입된 문자열을 화면에 출력합니다.
TextView의 속성 중 자주 이용하는 몇 가지를 살펴보겠습니다.
android:text
화면에 출력할 문자열을 지정하는 속성입니다. 레이아웃 XML 파일에 직접 문자열을 명시할 수도 있고, 문자열 리소스를 이용할 수도 있습니다.
- android:text="hello world"
- android:text="@string/hello"
android:typeface
화면에 출력할 문자열의 폰트를 지정하는 속성입니다. normal (default), sans, serif, monospace 중 하나를 입력하면 됩니다.
위의 4가지 폰트는 안드로이드에서 기본으로 제공하는 폰트이며, 만약 개발자가 임의의 폰트를 적용하고 싶다면 폰트 파일(ttf)을 assets 폴더에 복사한 후 코드에서 setTypeFace( ) 함수를 이용하여 TextView에 지정해주면 됩니다.
TextView textView=findViewById(R.id.text_font);Typeface typeface=Typeface.createFromAsset(getAssets(), "xmas.ttf");textView.setTypeface(typeface);
android:textStyle
화면에 출력할 문자열 효과로 normal (default), bold, italic 중 하나를 입력하여 문자열을 굵은
글씨로 표현하거나 기울어진 이탤릭 형태로 표현할 수 있습니다.
android:textColor
화면에 출력할 문자열의 색상을 #FF0000처럼 16진수 RGB 포맷으로 지정할 때 사용합니다.
android:textSize
화면에 출력할 문자열의 폰트 크기를 지정할 때 사용합니다.
android:autoLink
TextView의 문자열을 분석해 문자열 내에 autoLink 값에 해당하는 URL 문자열이 포함되었으면, 이 URL 문자열 부분을 자동 링크 형태로 출력해줍니다.
또한, 개발자 코드에서 이벤트를 처리하지 않아도 자동으로 사용자 클릭이 있을 때 다양한 화면으로 연결해줍니다.
<TextViewandroid:layout_width="match_parent"android:layout_height="wrap_content"android:text="가나다라 http://www.google.com 마바사 a@a.com 아자차카타 1234-5678"android:autoLink="web|email|phone"/>
위의 화면에서 각각의 링크를 사용자가 클릭하면 자동으로 브라우저, 이메일 앱, 전화 앱이 실행됩니다.
android:maxLines
TextView에 긴 문자열을 대입하면 자동 개행하여 여러 줄로 출력되는데요. 만약 특정 줄만큼만
출력하려면 maxLines 속성으로 지정합니다.
<TextViewandroid:layout_width="match_parent"android:layout_height="wrap_content"android:text="@string/long_text"/><TextViewandroid:layout_width="match_parent"android:layout_height="wrap_content"android:text="@string/long_text"android:maxLines="3"/>
두 개의 TextView에 똑같이 긴 문자열을 출력한 예인데요. 모든 문자열이 출력되려면 6줄 정도가 필요합니다.
그런데 두 번째 TextView에는 maxLines 속성을 이용하여 최대 3줄까지만 출력되게 지정하였습니다.
결과 화면을 보면 첫 번째 TextView는 문자열을 모두 출력하였고, 두 번째 TextView는 3줄까지만 출력하였습니다. 이후 문자열은 출력되지 않습니다.
ellipsize
maxLines로 지정한 줄만큼만 출력할 수 있는데, 이때 줄임 표시(...)를 하고 싶은 때가 있습니다.
이 문자열 줄임 표시를 자동화하는 속성이 ellipsize입니다. 속성값으로 end, start, middle 등을 지정하여 전체 문자열의 어느 부분을 줄임 표시로 표현할지를 명시해줍니다.
end로 지정하면 maxLines로 지정한 줄만큼만 출력되고 뒷부분에 줄임 표시(...)를 자동으로 추가해줍니다.
<TextViewandroid:layout_width="match_parent"android:layout_height="wrap_content"android:text="@string/long_text"android:ellipsize="end"android:maxLines="3"/>
두 번째와 세 번째 모두 maxLines로 3줄 출력을 명시한 예이며, 세 번째만 ellipsize="end"로 지정하여 테스트한 예입니다. 세 번째 TextView의 출력 문자열 맨 마지막 부분에 줄임 표시(...)가 자동으로 추가되었습니다.
'Android' 카테고리의 다른 글
[깡샘의 안드로이드 프로그래밍] 정리 6 - Relative Layout (0) | 2018.01.05 |
---|---|
[깡샘의 안드로이드 프로그래밍] 정리 5 - Step by Step 실습 : TextView 활용 (0) | 2018.01.05 |
[깡샘의 안드로이드 프로그래밍] 정리 3 - View 기초 속성 (0) | 2018.01.05 |
[깡샘의 안드로이드 프로그래밍] 정리 2 - build.gradle (0) | 2018.01.05 |
[깡샘의 안드로이드 프로그래밍] 정리 1 - 안드로이드 컴포넌트 개념 (0) | 2018.01.05 |