본문 바로가기
안드로이드/데이터 입출력

안드로이드 코드 View

by 김어찐 2022. 6. 20.
728x90

코드를 통해 View 객체를 생성하여 layout에 추가할 수 있다.
View 객체를 생성할 때는 생성자에 Context 객체를 설정해줘야 한다.
Context는 어떠한 작업을 하기 위한 정보를 가지고 있는 객체를 통칭한다.
안드로이드에서는 Activity가 Context를 상속받고 있기 때문에 this를 넣어주면 되고 그 외에는 Context를 구하는 다양한 메서드를 통해 설정한다.

 

package com.example.codeview

import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import android.widget.Button
import android.widget.ImageView
import android.widget.LinearLayout
import kotlinx.android.synthetic.main.activity_main.*

class MainActivity : AppCompatActivity() {
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)


        val param1 = LinearLayout.LayoutParams(
            LinearLayout.LayoutParams.MATCH_PARENT,
            LinearLayout.LayoutParams.WRAP_CONTENT
        )
        val btn1 = Button(this)
        btn1.text = "추가된 버튼입니다."
        btn1.layoutParams = param1
        btn1.setOnClickListener {
            textView.text = "추가된 버튼을 눌렀습니다"
        }

        val img1 = ImageView(this)
        img1.layoutParams = param1
        img1.setImageResource(R.mipmap.ic_launcher)

        button.setOnClickListener {
            container.addView(btn1)
            container.addView(img1)
        }
        button2.setOnClickListener {
            container.removeView(btn1)
            container.removeView(img1)
        }
    }
}

728x90

'안드로이드 > 데이터 입출력' 카테고리의 다른 글

안드로이드 sqlite 1  (0) 2022.06.23
안드로이드 assets  (0) 2022.06.22
안드로이드 파일 입출력  (0) 2022.06.21
안드로이드 Application Class  (0) 2022.06.21
안드로이드 xml View  (0) 2022.06.20