swift (6) 썸네일형 리스트형 [Swift] Sqlite 사용법 IOS에서 DB를 사용하는 방법은 Sqlite 와 Realm이 있다. Realm은 속도가 빠르고, 높은 용량을 요구하여 대용량 데이터를 다룰 때 사용하는 방법이다. Sqlite는 그 반대로 내장된 라이브러리라서 가볍게 사용하기 좋다. Swift로 간단히 데이터를 저장하기 위해 Sqlite의 사용법을 알아보도록 한다. 1. Swift에 sqlite import를 해준다. import SQLite3 2. 변수 및 테이블 명 (전역 변수로 선언해 준다.) var db:OpaquePointer? let TABLE_NAME : String = "DaDaTable" 2. Table 생성 func createTable(){ let fileURL = try! FileManager.default.url(for: .doc.. [swift] Cocoapads import 에러 fireBase import 시 에러가 발생하는 경우가 있다. PodFIle을 연동하고 프로젝트 실행 시 import구문에서 에러가 발생하는 경우가 있다. 이떄 해결방안으로는 1. Pods 폴더를 삭제한다. 2. .xcworkspace 파일을 삭제한다. 다시 podFile을 install해본다. $ pod install 이후 .xcworkspace로 프로젝트를 실행한다. (.xcodeproj로 실행 시 똑같이 import 오류가 발생한다.) [Swift] FireBase 연동 XCode에서 FireBase를 연동해보자. 설명에 앞서 Firebase란...? 이전에 개인이 모바일 앱을 개발하는 경우 서버와 관련된 부분을 전부개발하여야 했으나, Google에서 Firebase라는 일종의 서버를 제공함으로 개발자에게 편의를 제공한다. 제공하는 기능으로는 데이터를 저장, 실시간 데이터 동기화, 사용자 인증, 데이터 분석, A/B Testing등을 제공하여 앱의 퀄리티와 안전성 편의성을 제공해 준다. 연동 하는 기본 조건은 아래와 같다. Xcode 12.2 이상 CocoaPods 1.10.0 이상 프로젝트에서 iOS 10 이상을 타겟팅해야 한다. 1. CocoaPods를 설치 하자 (CocoaPodsfks? XCode에서 외부 라이브러리를 관리 해 주는 모듈) ※ CocoaPods 참.. [swift] 통신 시 인터넷 권한 추가 (info.plist 설정하기) 프로젝트 생성 후 네트워크 통신 시 동작되지 않는 문제가 발생한다. 안드로이드의 Manifest에 Internet 권한을 주는것 처럼 ios에서도 권한을 추가 해야한다. plist에 App Transport Security Settings >> Allow Arbitrary Loads : YES 로 추가 해주면 되지만, XCode 버전에 따라 옵션이 없는 경우가 있어 이경우에는 수동으로 권한을 추가해 주어야 한다. plist 메뉴에서 Open As > Source Code 를 선택 하면 xml형식의 소스 코드를 볼수 있다. 다음 옵션을 수동으로 추가하면, 정상적으로 사용할수 있다. NSAppTransportSecurity NSAllowsArbitraryLoads 그 외에도 ios 기능 이용 시 plist에.. [Swift] Objective-C 연동하기(bridging header) Swift 프로젝트에서 Objective-C의 함수를 사용하는 방법에 대해 정리한다. 1. 가장 먼저 Swift 프로젝트 생성 한다. 2. 생성한 Swift 프로젝트에서 New File...선택 후 Objective-c 파일 추가 선택 3. 초기 Objective-C 파일 생성 시 bridging header를 생성 하겠느냐는 팝업이 뜨는데 이때 Create Bridging Header 를 선택해준다. (아래 구조로 .h, .m bridging header가 생성된다) 4. Objective-C Class에 원하는 함수에 대해 기능을 작성한다. Swift Class 에서 Objective-c에 구현된 함수를 호출할 수 있다. 5. Bridge header 에 생성한 Objective-c Class의 he.. [Swift] Struct와 Class 정리 Swift에서는 코드를 구현할때 Struct와 Class로 필요한 형식과 용도에 맞게 묶어서 코딩을 한다. Struct와 Class의 공통점 1. 데이터(Property)와 기능(Method)에 대해 정의 할 수 있다. - 값을 저장하기 위해 Property를 정의 - 기능을 제공하기 위해 Method를 정의 2. 확장(Extension)이 가능하다 초기 구현된 내용에 새로운 기능 추가를 하여 하용할수 있다. (키워드 extention) 3. 서브스크립트(subscript) 사용할 수 있다. - “.”을 이용해 하위의 프로퍼티에 접근 가능하다 4. 프로토콜 사용이 가능하다. - Java의 Interface와 비슷한 개념 (추후 이 부분에 대해서도 정리가 필요) 5. 초기화를 정의하여 초기상태 설정이 가능.. 이전 1 다음