분류 전체보기
-
[ios/Swift] UserDefaults객체에 객체배열 저장하고 가져오기Study/ios 2023. 3. 12. 16:55
UserDefaults객체를 통해 원하는 정보를 반영구적으로 저장하고 불러올 수 있다.이때 일반적인 방법으로는 객체배열을 불러올 수 없다.데이터를 저장 할때는 인코딩해주고 불러올 때는 디코딩 해줘야 한다. User라는 클래스나 구조체가 있다 하면..// Codable 프로토콜 채택class User: Codable { . . .} let ud = UserDefaults.standardvar user:[User] = [] // 객체배열 생성// user라는 객체배열을 인코딩하여 "user"라는 키로 저장ud.set(try? PropertyListEncoder().encode(user), forKey: "user")-> 저장// "user"키를 통해 저장된 데이터를 불러온다.// 데이터타입을 객체..
-
[ios/Swift] UserDefaults를 통한 비동기식 데이터 전달Study/ios 2023. 3. 8. 16:21
- UserDefaults객체를 활용하여 간단한 정보를 반영구적으로 저장하고 관리한다. (앱이 삭제되지 않는 이상 유지) 1. VC2에서 새로운 값을 UserDefault객체에 저장한다.@IBAction func onSubmit(_ sender: Any) { // UserDefault 객체의 인스턴스를 가져온다 let ud = UserDefaults.standard // 값을 저장한다. ud.set(self.email.text, forKey: "email") ud.set(self.isUpdate.isOn, forKey: "isUpdate") ud.set(self.interval.value, forKey: "inter..
-
[ios/Swift] 데이터 받아오기 - 동기식(Segue Action)Study/ios 2023. 3. 7. 21:36
@ 새로 전환한 화면에서 동기식으로 데이터 가져오기 1. 두 개의 화면 구성해주고 세그웨이 액션을 통해 간단하게 화면 전환 2. VC1에서 띄운 VC2에서 데이터 입력하고 버튼 클릭시 VC1에 데이터 전달하고 화면 종료// VC2에서 데이터 입력하고 Submit버튼 클릭 @IBAction func onSubmit(_ sender: Any) { // presentingViewController 속성을 통해 이전 화면 객체를 읽어온 다음, ViewController 타입으로 캐스팅한다. let preVC = self.presentingViewController guard let vc = preVC as? ViewController else { r..
-
[ios/Swift] 화면 전환간 데이터 전달 - 동기식(present 화면전환)Study/ios 2023. 2. 20. 00:12
두 개의 뷰컨트롤이 있을 때 VC1(ViewController1)에서 present로 연 VC2(ViewController2)로 값 전달하기화면 전환간 데이터를 직접 전달 방식(동기식)을 통해 전달한다.직접 전달 방식(동기식)은 영속적으로 값을 저장할 필요가 없는 화면 전환에서 사용된다.화면 전환 방법은 present를 사용하고 VC1에서 VC2의 인스턴스를 생성하여 프로퍼티에 값을 대입한다.VC1에서 VC2 인스턴스를 생성하여 VC2 프로퍼티에 값을 대입하고 present를 통해 화면을 전환한다. 1. VC1 준비하기- text, isOn, stepper값을 입력할 수 있는 뷰컨트롤을 준비한다.- VC2로 전환하기 위한 Submit 버튼도 배치한다. 2. VC1에서 입력한 값을 출력할 VC2를 준비한..