메뉴 건너뛰기

조회 수 1309 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄 첨부
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄 첨부

안드로이드 TextView는 화면에서 Text를 표시할 때 사용하는 뷰 위젯입니다. Button 과 EditText의 부모 클래스이기도 한 TextView는 사용법은 간단하지만 부모 클래스인 View 클래스로부터 상속받는 다양한 속성과 자기 자신이 가지는 다양한 속성들로 인해 자유자재로 다루는데는 시간이 걸립니다. 

 

 

 


1. TextView 화면에 배치하기

    <TextView
        android:id="@+id/textView6"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="TextView" />

▼ TextView를 화면에 배치하는건 간단합니다. 심지어는 안드로이드 프로젝트를 처음 만들었을 때 생기는 Activity의 xml 레이아웃 리소스에서도 익숙하게 보셨을 겁니다. TextView의 Text 속성에 화면에 표시하고자 하는 문자열을 속성값으로 지정하게 되면 해당 속성값이 화면에 표시가 됩니다.


2. 자바 소스에서 TextView의 Text 지정 및 가져오기

종종 자바 소스상에서 TextView의 Text 속성값을 지정하거나 가져와 핸들링해야 하는 경우가 있습니다. 그 방법은 간단합니다. 아래 샘플 예제를 통해 살펴보겠습니다.

    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        TextView textView = (TextView)findViewById(R.id.textView);

        Log.d(this.getClass().getName(), (String)textView.getText());
        textView.setText("Hello World");
    }

▼ 먼저 TextView의 Text 속성값에 접근하기 위해서는 TextView의 참조 객체가 필요합니다. TextView의 id 속성값을 활용하여 findViewById() Method를 통해 TextView 참조 객체를 얻어옵니다. 그런다음 해당 TextView의 Text 속성값을 가지고 올때는 getText() Method를 활용합니다. 반대로 Text를 지정할 때는 setText("지정할 문자열") Method를 활용합니다.

 

3. textView의 글꼴 지정하기

textView의 여러 속성들을 활용하여 Text의 글꼴을 지정할 수 있습니다. 아래는 대표적인 Text 글꼴을 지정하는 속성들입니다.

속성

설명

textColor

Text의 색상과 투명도를 설정할 수 있습니다.

textSize

Text의 크기를 지정합니다. 다양한 단위를 사용할 수 있습니다.

textStyle

Text의 Style을 지정합니다. 

 

bold : Text의 굵기를 두껍게 표시합니다.

italic : Text를 기울여 표시합니다.

 

위 두가지 Style을 혼합하여 사용이 가능합니다.


4. textView의 속성 - singleLine / ellipsize

textView의 Text의 길이가 Text의 수평영역을 벗어날경우 자동으로 줄바꿈이 발생합니다. singleLine 속성을 "true"로 지정하게 되면 이러한 줄바꿈이 발생하지 않고 잘리는 Text 영역을 ... 과 같은 생략기호로 나타냅니다. 반면에 ellipsize 속성은 singleLine 속성값이 "true"일 때 혼합하여 사용하는 속성으로 text가 생략되는 위치를 지정할 수 있습니다.

 

속성값

설명

start

Text 앞쪽을 생략합니다.

middle

Text 중앙을 생략합니다.

end

Text 끝쪽을 생략합니다.

    <LinearLayout
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:orientation="vertical"
        tools:layout_editor_absoluteX="8dp"
        tools:layout_editor_absoluteY="8dp">

        <TextView
            ...
            android:ellipsize="start"
            android:singleLine="true"
            .../>

        <TextView
            ...
            android:ellipsize="middle"
            android:singleLine="true"
            ... />

        <TextView
            ...
            android:ellipsize="end"
            android:singleLine="true"
           ... />
    </LinearLayout>

 

 

▼ textView 3개를 배치하고 singleLine 속성값을 true로 지정합니다. 그런다음 ellipsize 속성값을 각각 다르게 지정한 샘플예제입니다. 속성값별로 Text 어느 영역이 생략되었는지를 확인해보시기 바랍니다.


5. textView 속성 - gravity 속성

gravity 속성은 TextView의 Text 영역내에서 Text의 배치 방향을 결정하는 속성입니다. Layout 공부를 하면서 봤던 layout_gravity 속성과 유사합니다.

 

 

 

 

▼ textView의 layout_gravity 속성은 자신이 속해있는 뷰 그룹(View Group) 영역내에서 자신의 배치를 결정짓는 속성입니다 .반면에 textView의 gravity 속성은 TextView 영역내에서 Text가 배치되는 영역을 지정하는 속성입니다.


List of Articles
번호 제목 날짜 조회 수
217 안드로이드 - Serializable를 활용한 다른 액티비티에 객체(Object) 전달하기 file 2021.03.31 356
216 안드로이드 - 인텐트(Intent)를 활용한 액티비티(Activity)간 데이터 전달하기 file 2021.03.31 413
215 안드로이드 - 인텐트(Intent)를 활용한 액티비티(Activity) 생성 및 실행하기 file 2021.03.31 273
214 안드로이드 - 스타일 리소스(Style Resource) 사용하기 <style> file 2021.03.31 293
213 안드로이드 - 색상 리소스 (Color Resource) 추가 </color> file 2021.03.31 597
212 안드로이드 - 문자열 배열 리소스 추가하기 <string-array> file 2021.03.31 884
211 안드로이드 - 문자열 리소스를 활용한 다국어 지원 file 2021.03.31 344
210 안드로이드 - 문자열 리소스(Resource) 추가 및 참조하기 file 2021.03.31 959
» 안드로이드 - 텍스트뷰(TextView) 사용법 정리 file 2021.03.31 1309
208 안드로이드 - 버튼 이벤트 처리방법 정리 (리스너 구현 및 이벤트 핸들링) file 2021.03.31 397
207 안드로이드 - 익명 클래스(Anonymous Class) 사용법 file 2021.03.31 344
206 setContentView()와 레이아웃 전개자(LayoutInflater) 2021.03.31 312
205 버튼 이벤트 추가하기 file 2021.03.31 240
204 안드로이드 가상머신 실행 속도 빠르게 하기 file 2021.03.31 268
203 버튼 이벤트 file 2021.03.31 240
202 App 실행 file 2021.03.31 286
201 Virtual Device , 디자인 화면 file 2021.03.31 302
200 Java에서 XML 불러와서 동적 변화 주기 file 2021.03.31 325
199 버튼 생성, 이벤트 처리 file 2021.03.31 278
198 안드로이드 - 에디트텍스트(EditText) 사용법 정리 file 2021.03.29 2800
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 ... 13 Next
/ 13

하단 정보를 입력할 수 있습니다

© k2s0o1d4e0s2i1g5n. All Rights Reserved