강의

멘토링

로드맵

인프런 커뮤니티 질문&답변

김하진님의 프로필 이미지
김하진

작성한 질문수

[왕초보편] 앱 8개를 만들면서 배우는 안드로이드 코틀린(Android Kotlin)

안드로이드 앱 뒤로가기 버튼 이벤트

onBackPressed()가 이제 안된다고 뜹니다

작성

·

482

0

선생님

OnBackPressed()로 해보니 안돼서 검색해보니 이제 OnBackPressedCallback()으로 바꼈다고 뜹니다. 구글링을 해봤으나 강의코드와 많이 달라져서 어디부터 어디까지 건드려야할지 감이 안잡힙니다.

답변 1

0

개복치개발자님의 프로필 이미지
개복치개발자
지식공유자

class MainActivity : AppCompatActivity() {

    private var isDouble = false

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


    override fun onBackPressed(){
        Log.d("MainActivity", "backbutton")
        if(isDouble == true) {
            finish()
        }

        isDouble = true
        Toast.makeText(this, "종료하실려면 더블클릭", Toast.LENGTH_LONG).show()

        Handler().postDelayed(Runnable {
            isDouble = false
        }, 2000)

    }
}

강의 대항 코드로 실행했을 때 별 문제가 없는데
혹시 어떻게 안되시는지 작성하신 코드와 스크린샷을 공유해주실 수 있으신가요?

김하진님의 프로필 이미지
김하진
질문자

스크린샷 2024-02-05 093055.png저런 오류가 떠서 alt+enter누르고 super.onBackPressed()를 밑줄에 추가했더니 빨간줄은 사라집니다. 1231231232024-02-05 093321.png실행도 되고 오류도 안뜨지만 뒤로가기 버튼을 눌러도 이런 화면으로 안넘어 가집니다.

그대로 2024-02-05 093721.png이 화면에서 반응이 없습니다.

개복치개발자님의 프로필 이미지
개복치개발자
지식공유자

에뮬레이터를 새롭게 만들어서 해보시겠어요?
그래도 안되시면 코드를 전체 복사해서 공유해주세요.

김하진님의 프로필 이미지
김하진
질문자

에뮬레이터를 다른걸로 하니까 되네요 감사합니다

김하진님의 프로필 이미지
김하진

작성한 질문수

질문하기