본문 바로가기
Swift 파헤치기

[Swift4] UserDefaults 사용하기

by doflamingo 2018. 10. 11.

Swift관련해서 첫글을 쓰게 되었는데 뭘 써야할까 하다가 딱히 생각나는게 없어서...

오늘 알게됐던 UserDefaults 라는 것에 대해 알게되어서 적어본다.

UserDefaults란 간단하게 말해서 자신의 디바이스에 임시로 저장해놓는 저장소인데

앱을 실행시켰다가 끄게 되면 모든 데이터는 날아가게된다. 이걸 방지하기 위해 key값과 value값을

저장해놓으면 앱에서 필요할때 key값으로 불러서 사용할 수 있게 된다.

그렇다면!!!

사용법을 알아보자


1) 값 저장하기


값을 저장하는 방법은 간단하다.

UserDefaults.standard.set("value", forkey: "key")

이렇게 사용하면 된다.

위의 value에 저장하고 싶은 값을 넣어두고 key에 내가 찾을때 사용할 key를 넣어주면 된다.\

그리고 key의 타입은 string이다.


저장할 수 있는 value는 위처럼 웬만한건 다된다 .

만약 안되면

UserDefaults.standard.setValue("value", forkey: "key")

도 있으니 사용해서 되는걸로 하면 된다.


2) 값 불러오기


값 불러오는거 역시 간단하다.

UserDefaults.standard.object(forkey: "key")

저기에 저장해둔 key를 통해서 value를 불러오면 된다.

만약 정해진 key값을 통해 저장된 value값이 없을때는 nil이 return 된다.

불러오는 것 역시 저장했던 모든 타입으로 불러오는게 가능한데

불러올 때 특정한 타입으로 불러올 수 있다.

UserDefaults.standard.integer(forkey: "key") //정수 value 불러오기

UserDefaults.standard.bool(forkey: "key") //bool value 불러오기

이런식으로 가능하다.

만약 type이 정수도 아니고 bool도 아니고 특이한 타입일 경우에는

UserDefaults.standard.object(forkey: "key")

를 이용하면 된다.


3) 값 삭제하기


UserDefaults.standard.removeObject(forKey: "key")

위와 같이 사용하면 key값을 가진 value가 삭제된다.

이외에도 다른 기능들이 있지만 내가 사용해봤던건 이게 전부라서 이것만 적었다.

UserDefault를 이용하면 굳이 DB에 저장하지 않고도 로컬에서 간단한 값들을 저장해서 사용할 수 있다.

그러나 많은 정보를 저장하기는 좋지 않기 때문에 많은 건 DB를 이용하기를 바란다.

처음으로 티스토리에 글을 써봤는데 별로 쓴 건 없는데 더럽게 오래걸렸다..

하다보면 빨라지는날이 오길 빌면서 자야겠따!.!



댓글