상세 컨텐츠

본문 제목

[안드로이드 코틀린] 텍스트뷰 TextView 동적으로 생성하는 방법

안드로이드

by aries574 2022. 10. 14. 12:54

본문


이번 시간에는 레이아웃에 텍스트뷰를 동적으로 생성하는 방법을 알아보겠습니다.


목차

1. 실행 화면
2. 뷰 바인딩
3. 메인 화면 activity_main.xml
4. 메인 코드 MainActivity.kt


1. 실행 화면

 


2. 뷰 바인딩

build.gradle(Module:프로젝트명:app)

android 괄호 안에 아래 코드를 넣어주시면 됩니다.

findViewById 없이 뷰 객체 접근하기 위한 설정

  buildFeatures{
        viewBinding = true
    }

 

 

3. 메인 화면 activity_main.xml

- 설명 -

 1. 텍스트뷰 보여주는 Layout

 2. 텍스트뷰 생성하는 Button

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    tools:context=".MainActivity">

    <!-- 텍스트뷰 보여줄 레이아웃 -->
    <LinearLayout
        android:id="@+id/listLayout"
        android:layout_width="match_parent"
        android:layout_height="100dp"
        android:background="#ACE6AE"
        android:orientation="horizontal"/>

    <!-- 텍스트뷰 생성 버튼-->
    <Button
        android:id="@+id/createBtn"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center"
        android:layout_marginTop="10dp"
        android:text="텍스트뷰 생성"
        android:textSize="20sp"/>

</LinearLayout>

 

4. 메인 코드 MainActivity.kt

- 설명 -

 1. val textView: TextView = TextView(applicationContext)

   텍스트뷰 생성

 2. textView.text = "텍스트 생성"

   텍스트뷰 글자

 3. textView.textSize = 12f

   텍스트뷰 글자 크기

 4. textView.setTypeface(null, Typeface.BOLD)

   텍스트뷰 글자 타입

 5. textView.id = 0

   텍스트뷰 아이디

 6. LinearLayout.LayoutParams(width, height)

   텍스트뷰 레이아웃 설정

 7. textView.layoutParams = param

   텍스트뷰 레이아웃 적용

 8. textView.setBackgroundColor(Color.BLACK)

   텍스트뷰 배경 색상

 9. textView.setTextColor(Color.WHITE)

   텍스트뷰 텍스트 색상

 10. binding.listLayout.addView(textView)

   텍스트뷰 레이아웃에 적용

class MainActivity : AppCompatActivity() {

    lateinit var binding: ActivityMainBinding

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        binding = ActivityMainBinding.inflate(layoutInflater)
        setContentView(binding.root)

        //텍스트뷰 생성 버튼
        binding.createBtn.setOnClickListener {
            //텍스트뷰 생성
            createTextView()
        }
    }//onCreate

    /**
     * 텍스트뷰 생성
     */
    private fun createTextView(){

        //1. 텍스트뷰 생성
        val textView: TextView = TextView(applicationContext)

        //2. 텍스트뷰 글자
        textView.text  = "텍스트 생성"

        //3. 텍스트뷰 글자 크기
        textView.textSize = 12f

        //4. 텍스트뷰 글자 타입
        textView.setTypeface(null, Typeface.BOLD)

        //5. 텍스트뷰 ID
        textView.id = 0

        //6. 레이아웃
        val param: LinearLayout.LayoutParams = LinearLayout
            .LayoutParams(LinearLayout.LayoutParams.WRAP_CONTENT, LinearLayout.LayoutParams.WRAP_CONTENT)

        param.leftMargin = 30

        //7. 레이아웃 적용
        textView.layoutParams = param

        //8. 텍스트뷰 배경 색상
        textView.setBackgroundColor(Color.BLACK)

        //9. 텍스트뷰 텍스트 색상
        textView.setTextColor(Color.WHITE)

        //10. 레이아웃에 텍스트뷰 추가
        binding.listLayout.addView(textView)
    }
}

2022.10.11 - [안드로이드] - [안드로이드 코틀린] 갤러리에서 선택한 사진 이미지 뷰(ImageView)에 보여주는 방법

 

[안드로이드 코틀린] 갤러리에서 선택한 사진 이미지뷰(ImageView)에 보여주는 방법

이번 시간에는 갤러리에서 사진 선택하면 이미지 뷰에 보여주는 방법에 대하여 알아보겠습니다. 목차 1. 실행화면 2. 뷰 바인딩 3. 라이브러리 등록 4. 메인 화면 activity_main.xml 5. 메인 코드

aries574.tistory.com

2022.10.06 - [안드로이드] - [안드로이드 코틀린] tic-tac-toe 보드게임 만드는 방법 part1 - 뷰 바인딩 및 화면 구성

 

[안드로이드 코틀린] tic-tac-toe 보드게임 만드는 방법 part1 - 뷰 바인딩 및 화면구성

이번 시간에는 Tic Tac Toe 보드 게임의 화면 구성을 해보겠습니다. Tic Tac Toe 게임은 오목처럼 번갈아 가며 클릭을 해서 누가 먼저 한 줄을 만들면 이기는 단순한 게임입니다. 목차 1. 실행 화면 2.

aries574.tistory.com

2022.10.04 - [안드로이드] - [안드로이드 코틀린] CountDownTimer 타이머 쉽게 만드는 방법 part1 뷰 바인딩 및 화면 구성

 

[안드로이드 코틀린] CountDownTimer 타이머 쉽게 만드는 방법 part1 뷰 바인딩 및 화면 구성

이번 시간에는 뷰 바인딩 설정과 타이머 화면 구성을 만들어 보겠습니다.  목차 1. 실행 화면 2. 뷰 바인딩 3. 메인 화면 activity_main.xml 1. 실행 화면  1-1 설정 화면 1-2 타이머 화면 2. 뷰바..

aries574.tistory.com

 

반응형

관련글 더보기

댓글 영역