Android/ViewBinding
ViewBinding 사용하기.(findViewById 대체)
${Harvey}
2022. 11. 21. 22:41
kotlinOptions {
jvmTarget = '1.8'
}
//ViewBinding을 사용하기위해 아래코드 추가.
buildFeatures{
viewBinding = true
}
}
dependencies {
implementation 'androidx.core:core-ktx:1.7.0'
build.gradle에 ViewBinding 사용을 위해 코드 추가.
Activity Ex.
class MainActivity : AppCompatActivity() {
private lateinit var binding : ActivityMainBinding
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
binding = ActivityMainBinding.inflate(layoutInflater)
val view = binding.root
setContentView(view)
binding.testText.text = "이것은 변경된 텍스트."
}
}
Fragment Ex.
class TestFragment : Fragment() {
private var _binding : FragmentTestBinding? = null
private val binding get() = _binding!!
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
}
override fun onCreateView(
inflater: LayoutInflater, container: ViewGroup?,
savedInstanceState: Bundle?
): View? {
_binding = FragmentTestBinding.inflate(inflater,container,false)
val view = binding.root
binding.fragmentText.text = "이것은 fragment Text"
return view
}
}
kotlinOptions {
jvmTarget = '1.8'
}
//ViewBinding을 사용하기위해 아래코드 추가.
buildFeatures{
viewBinding = true
}
}
dependencies {
implementation 'androidx.core:core-ktx:1.7.0'
build.gradle에 ViewBinding 사용을 위해 코드 추가.
Activity Ex.
class MainActivity : AppCompatActivity() {
private lateinit var binding : ActivityMainBinding
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
binding = ActivityMainBinding.inflate(layoutInflater)
val view = binding.root
setContentView(view)
binding.testText.text = "이것은 변경된 텍스트."
}
}
Fragment Ex.
class TestFragment : Fragment() {
private var _binding : FragmentTestBinding? = null
private val binding get() = _binding!!
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
}
override fun onCreateView(
inflater: LayoutInflater, container: ViewGroup?,
savedInstanceState: Bundle?
): View? {
_binding = FragmentTestBinding.inflate(inflater,container,false)
val view = binding.root
binding.fragmentText.text = "이것은 fragment Text"
return view
}
}