[Android Studio] 하체운동 어플 만들기 - 4

박지운·2022년 9월 5일
0
post-thumbnail

드디어 로고랑 카드 이미지를 모두 받았다.

다시 한번 만들어주신 yebxxng님께 감사드립니다….😊

깔끔하게만 만들 생각이였는데 너무 정성들여 잘 만들어주셨다….ㅎ

뒤로가기 해결

운동을 계속 하면서 다른 어플을 써볼 때 굳이 메인 화면으로 나갈 필요성을 못느꼈다.
그래서 한 번 누르면 토스트 메세지를 띄우고 두 번 눌렀을 때 앱을 종료하는 방법을 택했다.


private long backBtnTime = 0;

@Override
    public void onBackPressed() {
        long curTime = System.currentTimeMillis();
        long gapTime = curTime - backBtnTime;

        if(0 <= gapTime && 2000 >= gapTime) {
            //super.onBackPressed();
           	 finishAffinity();
        }
        else {
            backBtnTime = curTime;
            Toast.makeText(this, "한번 더 누르면 종료됩니다.",Toast.LENGTH_SHORT).show();
        }
    }

눌렀을 때 시간차이를 이용하는 방법이다.
구글링으로 공부했는데 onBackPressedfinishAffinity 두 개를 많이 써 찾아보았다.
결과적으로
onBackPressed 는 뒤로가기 기능뿐 아니라 다른 기능을 위해 조작할 때 사용하고
종료 목적이라면 finish를 사용해야한다고 한다.

finish는 현재 액티비티를 종료시키는 것이라 모두 종료시켜 앱을 끄기 위해서는 finishAffinity를 사용해야했다.


쉬는 시간

토스트 메세지 대신 카드 하단에 텍스트뷰로 뜨게 했다.

(40세트 넘어가면 힘들어서 제대로 보지도 못한다.)


걸린 총 시간

마지막카드를 뽑으면 총 시간이 뜨게 했다.
기록이 있으니 저번보다 더 줄일 수 있게 동기가 될 것이다.

long startTime = System.currentTimeMillis();
//마지막 카드를 뽑은 후
long curTime = System.currentTimeMillis();
int time = (int) (curTime - startTime) /1000; 
int sec = time % 60;
int min = time/ 60 % 60;

다음 계획...

이제 필요한 기능은 다 있어 플레이스토어에 올리려고 한다... 개강했더니 너무 바쁘다ㅠ
조금만 더 일찍 시작할 걸,,,,,,,😅

profile
앞길막막 전과생

0개의 댓글