ios35 [IOS] UserDefaults란? UserDefaults란? 앱 실행 시 지속적으로 키-값 쌍을 저장하는 사용자의 기본 데이터베이스에 대한 인터페이스이다. 런타임 환경에서 동작하면서, 앱이 실행되는 동안 default database에 접근해 데이터를 기록하고 가져오는 역할을 한다. 싱글톤 패턴으로 설계되어 앱 전체에서 단 하나의 인스턴스만 존재함 데이터 저장 open func set(_ value: Any?, forKey defaultName: String) 함수를 사용한다. set함수에는 String, Double, Int 등 value 매개변수에 다양한 타입이 있지만, 데이터를 저장할 때에는 저장 가능한 타입 형식이라면 어떤 값을 입력해도 오류가 발생하지 않는다. Int, Float, Double, Bool, URL? 같은 공통 유.. 2023. 4. 12. [Swift] 프로토콜 - 프로토콜 구현, 채택, 클래스 전용 프로토콜 프로토콜이란 프로토콜 : 특정 역할을 하기 위한 메서드, 프로퍼티, 기타 요구사항 등의 청사진을 정의하는 것 정의해 둔 프로토콜을 실제 구조체 클래스 등에서 채택을 해 해당 요구사항을 정의한다. -> 이를 '해당 프로토콜을 준수한다'라고 표현 프로토콜을 준수하기 위해서는 요구사항을 모두 구현해야 한다. 프로토콜은 정의를 하고 요구사항을 제시만 할 뿐 스스로 기능을 구현하진 않는다. 프로토콜 구현 protocol 프로토콜이름{ 프로토콜 정의 } 프로토콜 채택 타입 명: 프로토콜 이름 형태로 사용 여러 개 채택 시 콤마로 구분 지어 사용 만약 클래스에서 프로토콜을 채택할 때, 다른 클래스를 상속받는 클래스라면 상속받을 클래스 이름 다음에 채택할 프로토콜을 나열함 ex) class A : 상속 클래스, 프로토.. 2023. 4. 11. [Swift] 타입캐스팅 - is, as 연산자 타입 캐스팅이란? 일반적으로 타입 캐스팅의 의미는 형변환으로 다른 형태의 자료형으로 변환하는 것을 의미한다. swift의 특징 중 하나는 데이터 타입의 안전을 위해 각기 다른 값 교환을 엄격히 제한한다. -> 다른 언어에서 지원하는 암시적 데이터 타입 변환을 지원하지 않는다. var num :Double = 3.3 var convertedNum:Int = Int(num) convertedNum = 5.5 //오류 발생 다른 언어에서는 5.5를 대입시 Double -> Int로 암시적 형변환이 이루어져서 대입되므로 오류가 발생하지 않지만 스위프트에서는 오류가 발생한다. 스위프트에서 Int(num)부분은 타입을 변환한 것이 아니라 Int의 이니셜라이저를 통해 기존 값을 전달받아 새로운 Int구조체의 인스턴트.. 2023. 4. 11. [IOS] 카메라, 갤러리 접근해서 사진 가져오기 - UIImagePickerController 실행 결과 버튼을 통해서 이미지를 추가하고 추가한 이미지를 화면에 띄워준다. 레이아웃 상단에 네비게이션 바를 추가해 주고, add형식의 바버튼을 추가해 준다. 화면 중앙에는 UIImageView를 추가한다. 아웃렛 변수 및 액션 함수 추가 1. 선택한 이미지 뷰를 출력해 주기 위해 이미지 뷰의 아웃렛 변수 연결한다. 2. 버튼을 통해 이미지 추가 동작을 실행할 것이므로 버튼에 액션 함수를 연결한다. Add 버튼 @IBAction func addBtnClick(_ sender:UIButton){ let alert = UIAlertController(title: "Title", message: "message", preferredStyle: .actionSheet) let library = UIAlertAc.. 2023. 4. 6. 이전 1 ··· 4 5 6 7 8 9 다음