상세 컨텐츠

본문 제목

Preference란?

실습/안드로이드 스튜디오

by 뽀사장 2024. 6. 13. 20:01

본문

728x90
반응형

 

Preference란?

  • 프로그램의 설정 정보를 영구적으로 저장하는 용도로 사용
  • 키-값 세트로 정보를 저장

 

SharedPreferences클래스

  • 키-값 세트 데이터를 관리하는 클래스
  • 액티비간에 공유하며 한쪽에서 수정하면 다른쪽에서도 수정된 값을 읽을 수 있지만 응용프로그램 고유한 정보라서 외부에서는 읽을 수 없음

gksrodml Shared Preference파일을 사용하는 경우

  • Activity 클래스에 정의된 메소드 이므로, Activity 인스턴스를 통해 접근 가능하다
  • 생성된 액티비티 전용이기 때문에 같은 패키지의 다른 액티비티는 읽을 수 없다
  • 파일명은 액티비티와 동일한 이름으로 생성한다

 

 

 

여러개의 Shared Preference파일을 사용할 경우

  • getSharedPreferences 사용
    • name: 데이터를 저장할 xml파일 이름
    • mode
      • MODE_PRIVATE: 호출한 애플리케이션 내에서만 읽기 쓰기가 가능
val 변수명 = activity?.getSharedPreferences(
    getString(R.string.preference키값), Context.MODE_PRIVATE)

 

 

에디트 텍스트를 이용하여 데이터를 저장하고 불러오는 예시코드

private fun saveData() {
    val 변수명 = getSharedPreferences("이름",0)  //0은 모드
    val 변수명2 = pref.edit() // 수정 모드
    변수명2.putString("키값", binding.에디트텍스트아이디.text.toString())
    변수명2.apply() //저장 완료
}

private fun loadData() {
    val 변수명 = getSharedPreferences("이름",0)
    binding.에디트텍스트아이디.setText(변수명2.getString("키값",""))
    //두번째인자에 데이터가 존재하지 않을경우 키값으로 저장된 데이터를 불러옴
}
728x90
반응형

관련글 더보기