본문 바로가기
안드로이드, 코틀린

안드로이드, 버튼으로 텍스트 내용 바꾸기

by zenna 2022. 4. 7.
728x90

activity_main.xml 에 버튼추가. 버튼 아이디는 btnSay

 

 

---

viewBinding true 설정하기

class MainActivity : AppCompatActivity() {
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)

        val binding = ActivityMainBinding.inflate(layoutInflater) //1. 2.

        setContentView(binding.root) //3

        binding.btnSay.setOnClickListener{
            //4.
            binding.textSay.text = "버튼을 클릭하면 이 내용으로 글이 바뀔거예요!"
        }
    }
}
  1. ActivityMainBinding : acticvity_main.xml 파일에서 첫글자와 _ 바로 뒤의 글자를 대문자로 변환하여 activity → Activity / _main → Main 으로 적어준 것!
  2. inflate(layoutInflater) : 클래스로 변환된 바인딩의 inflate함수로 초기화하고 변수에 저장
  3. setContentView : R.layout.activity_main 이라고 적혀있던것을 바꿔줌
    • 변수에 저장된 바인딩의 root뷰를 setContentView에 전달해준 것
    • 이제 Binding 설정을 해주었으므로 앞으로 id로 접근할 땐 변수이름.textView = “표시할 내용” 식으로 접근해주면 됨
    • binding 변수를 통해 뷰에 미리 작성해둔 버튼의 id에 접근할 수 있는 상태로 만들어줌
  4. id가 btnSay인 버튼을 클릭하면 수행할 내용을 여기에 적으면 됨
    • 버튼의 id에 Listner를 설정하여 버튼 클릭 시 내부의 코드를 동작시키는 방식
    • id가 textSay인 텍스트 박스의 내용을 바꿀 코드를 적어준 것

 

728x90

댓글