Android - 비밀다이어리

Code_Alpacat·2021년 11월 21일

안드로이드 기초

목록 보기
17/18

이번 포스팅부터는 내가 새로 사용한 기능들의 역할을 위주로 서술할 것이다.
그 이유는 모든 과정들을 전부 나열하면, 나중에 까먹거나 기능을 찾고 싶을때, 난잡한 포스팅들 사이에서 찾아야만하기 때문이다.

Handler

쓰레드와 쓰레드간의 통신을 엮어주는 기능. 우리가 항상 작업하는 메인쓰레드에서 무거운 작업을 돌리기 힘들때나, 네트워크 통신 등 다른 작업이 필요할 때는, 쓰레드를 열어주거나 Handler기능을 사용해줄 수 있다.

SharedPreferences

앱을 종료하더라도 정보가 사라지지 않도록 해주는 기능이다. getSharedPreferences로 선언해 인자로 name 과 context를 받는다.

AlertDialog

경고 알림을 띄우는 기능이다. 빌더패턴을 이용했으며, 메세지와 타이틀, positive에 확인버튼을 추가해줬다. negative 버튼을 사용해줄 수도 있다.

 private fun showErrorAlertDialog() {
        AlertDialog.Builder(this)
            .setTitle("실패!")
            .setMessage("비밀번호가 틀렸습니다")
            .setPositiveButton("확인"){ _, _ -> }
            .create()
            .show()
    }

NoActionBar

Theme과 manifest에 NoActionBar기능을 추가해줌으로 상단의 거치적거리는 액션바를 없앨 수 있다.
그리고 ActionBar의 스타일도 바꿀 수 있다.

Kotlin(android-ktx)

passwordPreferences.edit(true){
                    putString("password", passwordFromUser)
                }
  

ktx를 이용해 sharedpreferences를 edit이라는 기능을 이용해 저장한 것이다. edit에서 제공하는 기능에는 두 가지가 있다.

  • commit() -> UI쓰레드를 잠시 막아 저장될 때까지 기다리게 한다.즉, 저장 작업이 끝날때까지 잠시 화면이 멈춘다.
  • apply -> 기다리지 않고 비동기적으로 저장한다.
profile
In the future, I'm never gonna regret, cuz I've been trying my best for every single moment.

0개의 댓글