[Kotlin][Android] μλλ‘μ΄λ 13(SDK 33)μ΄μ OnBackPressed() deprecatedμ κ΄νμ¬
μλ νμΈμ π
μ€λμ μλλ‘μ΄λ 13(targetSDK 33) μ΄μ λ²μ μμ onBackPressedκ°
deprecatedλ건μ λν΄ ν¬μ€ν ν΄λ³΄λ € ν©λλ€!
ν¬μ€ν μ νκ² λ κ³κΈ°λ
targetSDK 33μΌλ‘ μ€μ ν μ½λ© μ€..
μ μ¬μ§κ³Ό κ°μ΄ ideμμ κ³μ warningμ μ‘λ κ²μ λ³Ό μ μμμ΅λλ€.
λμμ μ μμ μΌλ‘ νλλ° μ deprecatedκ° λ κ²μΈμ§ μμ보λ μλμ κ°μ μ΄μ κ° μμμ΅λλ€. π€
μλλ‘μ΄λ 10λΆν° μμ€ν
μ΄ μ μ€μ² νμ κΈ°λ₯ (μΌμͺ½μμ μ€λ₯Έμͺ½μΌλ‘ μ€μμ΄ν ν΄μ λ€λ‘ μ΄λνλ κ²κ³Ό κ°μ μ μ€μ²)μ μ 곡νμλλ°μ μ±μμ μ΄ μ μ€μ²λ₯Ό μ€μμ΄νμ κ²°ν©λμ λ μκΈ°μΉ μμ λμμ μ΄λνλ€κ³ ν©λλ€.
μ¦ , μ μ€μ²κ° μμ€ν
λ€λ‘ λλ μ± λ€λ‘ νμμ ν κ²μΈμ§ μλλ‘μ΄λ μμ€ν
μ΄ κ΅¬λ³ν μ μλ€λ κ²μ
λλ€.
(μ±μ΄ μ μ€μ²λ₯Ό μ²λ¦¬νλμ§ λ€λ‘ κ°κΈ°λ₯Ό μ²λ¦¬νλμ§λ₯Ό μ μ μλ€.)
κ·Έλ κΈ°μ νμ¬ onBackPressed() λμ backPressedDispatcherμ callBackμ μΆκ°ν΄μ£Όμ΄ λμνλλ‘ κΆμ₯νκ³ μμ΅λλ€.
μ¬μ©λ°©λ²μ μλμ κ°μ΅λλ€.
private lateinit var binding : AcitivtyMainBinding
override fun onCreate(savedInstance : Bundle?) {
super.onCreate(savedInstance)
binding = ActivityMainBinding.inflate(layoutInflater).also{
setContentView(it.root)
}
this.onBackPressedDispatcher.addCallback(this , MyBackPressedCallBack())
}
/* override fun onBackPressed() { κΈ°μ‘΄ μ¬μ©λ°©λ²
super.onBackPressed()
} */
inner class MyBackPressedCallBack() : OnBackPressedCallback(true) {
override fun handleOnBackPressed() {
// backν€ μΈκ°μ ν λμ ꡬν
}
}
κΈμΌμ μμλλ©΄ μ’μ κ² κ°μ μ 보λ₯Ό 곡μ νκΈ° μνμ¬ ν¬μ€ν ν΄λ³΄μμ΅λλ€!!
μ€λλ μ¦μ½ νμΈμ :)
