IT/kotlin

Android에서 viewbinding 셋팅 방법

가능성1g 2025. 5. 19. 19:22
반응형

 

# 2025-05-21 추가

그냥 findbyViewId 쓰는게 덜 번거롭다. 

--> 아니다. 다시보니 타입캐스팅이 있어서, viewbinding 쓰는게 더 편하다!

이게 별로면 JetPack Compose 를 쓰는게 낫겠다.

 

1. 그레이들 셋팅

android {
...
    buildFeatures {
        viewBinding = true
    }
}

추가 후, sync 실행

 

2. 페이지별 binding 셋팅 방법

class FileExActivity : AppCompatActivity() {

    private lateinit var binding: ActivityFileExBinding  // Activity*파일명(Activity)제외*Binding 으로 자동 생성

    override fun onCreate(savedInstanceState: Bundle?) {

        super.onCreate(savedInstanceState)
        enableEdgeToEdge()

        //binding 변수에 할당!
        binding = ActivityFileExBinding.inflate(layoutInflater)
        setContentView(binding.main)

        ViewCompat.setOnApplyWindowInsetsListener(binding.main) { v, insets ->
            val systemBars = insets.getInsets(WindowInsetsCompat.Type.systemBars())
            v.setPadding(systemBars.left, systemBars.top, systemBars.right, systemBars.bottom)
            insets
        }

		//접근방법 binding.레이아웃의 id 
        binding.saveButton.setOnClickListener{

 

binding 선언할때 다른 Activity 파일을 선언해서 엮어주면 접근이 가능함!

반응형