iOS

iOS

ARC(Automatic Reference Counting)

ARC 메모리 개념 (Retain Cycle, strong, weak, unowned)에 대해 알아 보겠습니다. ARC ARC는 Automatic Reference Counting의 약자로 기존에 수동(MRC라고 함)으로 개발자가 직접 retain/release를 통해 reference counting을 관리해야 하는 부분을 자동으로 관리해줍니다. Memory Management without ARC 1. GC (Garbage Collection) 정기적으로 Garbage Collector 가 동작하여 더이상 사용되지 않는 메모리를 반환하는 방식 OS X 에서만 지원했었으나 버전 10.8 (Mountain Lion) 부터 deprecated ARC는 GC(Garbage Collector)와는 다르게 런타..

iOS

[iOS] 단축키(Shortcuts)

Xcode에서 사용하는 팁과 단축키에 대해 알아보겠습니다. Shortcuts 오늘은 Xcode를 사용하면서 유용한 팁이나 단축키에 관해 알아 보겠습니다. 너무 많아서 하나씩 해보면서 몸에 익혀야겠어요.

iOS

[iOS] UIImagePickerController

UIImagePickerController를 통해 사진,동영상 촬영/저장에 대해 알아보겠습니다. UIImagePickerController 사진, 동영상 촬영, 저장에 관해 포스트 해보도록 하겠습니다. 먼저 간단하게 앨범, 카메라, 딜레이촬영, 동영상, Editing변경버튼을 만들어 간단한 기능 소개를 해보겠습니다. 만들어보죠 UIImagePickerController 객체 생성 private let imagePickerController = UIImagePickerController() 앨범 접근 @IBAction private func pickImage(_ sender: Any) { print("\n---------- [ pickImage ] ----------\n") //간단히 present만으로 ..

iOS

[iOS] TabbarController

TabbarController 대해 알아 보겠습니다. TabbarController? 한가지를 선택할 수 있는 라디오 스타일의 컨테이너 뷰 컨트롤러. 여기서 선택은 표시할 자식 뷰 컨트롤러를 말합니다. UITabBar 하나 이상의 버튼을 이용해 서로 다른 작업이나 뷰, 모델 등을 선택해 제어하기 위한 바 보통 UITabBarController 와 결합해 많이 쓰지만 단독으로도 활용 가능 UIToolbar 와 비슷한 모양이지만 상이한 목적을 지님. 탭바는 앱의 모드를 변화하기 위한 것 툴바는 현재 뷰컨트롤러의 컨텐츠에 관련된 액션을 수행하기 위한 것 UITabBarITem 하나의 TabBarITem 마다 각각의 ViewController 가 연결 ViewController 에 tabBarItem 속성을 통..

iOS

[iOS] NotificationCenter

NotificationCenter에 대해 알아 보겠습니다. NotificationCenter NotificationCenter의 동작에 대해 먼저 이야기 해보겠습니다. NotificationCenter에 등록된 Event가 발생하면 해당 Event들에 대한 행동을 취하는것. 앱 내에서 아무데서나 메시지를 던지면 앱 내의 아무데서나 이 메시지를 받을 수 있게 해 주는 것이 NSNotificationCenter의 역활. NotificationCenter는 notification의 중계자 역할을 합니다. //NotificationCenter Singleton Pattern NotificationCenter.default post post는 전송 하는 notification입니다. myNoti를 Observer..

iOS

[iOS] UIDocumentInteractionController

앱에서 직접 파일 형식을 처리 할 수 없는 파일을 미리보기와 파일을 다른앱에 전송해주는 컨트롤러 대해 알아 보겠습니다. UIDocumentInteractionController 앱에서 직접 파일 형식을 처리 할 수 없는 파일을 미리보기와 파일을 다른앱에 전송해주는 컨트롤러입니다. 아이폰을 사용하실때 이런 화면을 많이 보셨을거에요 UIDocumentInteractionController에 대해 알아보겠습니다. 사용법도 간단합니다. DocumentInteraction 프로젝트를 만들고 Preview 버튼과 + 버튼을 만들었습니다. class ViewController: UIViewController { /*************************************** UIDocumentInteract..

iOS

[iOS] 앱 샌드박스(App Sandbox)와 Container Directory

앱 샌드박스(App Sandbox)와 Container Directory개념에 대해 알아 보겠습니다. Sandbox 샌드박스(Sandbox)란 미국에서 어린아이를 보호하기 위해 모래통(Sandbox)에서만 놀도록 하는데서 유래한 보안 모델을 말합니다. 즉, iOS는 기본적으로 앱 마다 별도의 파일을 생성하여 공유되지 않도록 하고 외부로부터 들어온 접근에 대해 보호되는 영역으로 시스템이 부정적으로 조작되는것을 막는 보안 형태입니다. 샌드박스가 있고 없고의 차이 샌드 박스가 아닌 앱은 해당 앱을 실행하는 사용자의 모든 권한을 가지며 사용자가 액세스 할 수있는 모든 리소스에 액세스 할 수 있습니다. 이렇게 모든 앱에 접근할 수 있게 되면 많은 기능들을 할 수 있고 자유롭지만 해당 앱이나 연결된 모든 프레임 워..

iOS

[iOS] 오토레이아웃(AutoLayout)과 Layout 개념

오토레이아웃(AutoLayout)과 Layout개념들에 대해 알아 보겠습니다. AutoLayout AutoLayout은 뷰에 주어진 제약조건에 따라 뷰의 크기와 위치를 동적으로 계산해 배치하느것으로, 외부 또는 내부의 변화에 동적으로 반응하여 유저 인터페이스 구성합니다. iOS에선 이러한 layout을 구성할때 3가지의 주요 접근 방식이 있습니다. Frame 기반의 프로그래밍 방식(Frame-Based Layout) Autoresizing masks Auto Layout Frame 기반의 프로그래밍 방식(Frame-Based Layout) 프래임 기반의 프로그래밍 방식 가장 유연하며 빠른 성능 모든 뷰에 대해 개별적인 설정과 관리가 필요. 설계 및 디버그나 유지관리에 많은 노력이 필요하다는 단점이 있습니..

iOS

[iOS] 델리게이트(Delegate)

델리게이트(Delegate)에 대해 알아 보겠습니다. Delegate 자신이 할 일을 다른 인스턴스에게 대신 처리하도록 구현하는 디자인 패턴 쉽게, 델리게이트는 어떤 객체가 해야 하는 일을 부분적으로 확장해서 대신 처리를 한다. 라고 정의 하고 싶습니다. 주로 다음과 같은 상황에 사용 뷰가 받은 이벤트나 상태를 뷰컨트롤러에게 전달하여 처리하도록 함 (View -> ViewController) 뷰 구성에 필요한 정보를 뷰컨트롤러가 결정하도록 함 (View

iOS

[iOS] UserDefaults

UserDefaults에 대해 알아보겠습니다. UserDefaults? iOS 에서 데이터를 파일에 저장하기 위해 사용하는 대표적인 클래스 중 하나 간단한 정보를 저장하고 불러올 때 사용하며 내부적으로 plist 파일로 저장 보통 로그인,설정,Version정보등의 간단한 정보를 저장할때 많이 사용합니다. UserDefaults는 싱글턴이고 standard로 관리를 하고, key-value 쌍으로 디바이스에 데이터를 저장하는 것을 도와주는 인터페이스입니다. 직접 확인해 보겠습니다. 사용법 저장하기, 불러오기 UserDefaults.standard.set(10, forKey: "십") //저장하기 print(UserDefaults.standard.integer(forKey: "십")) //불러오기 UserD..

jinnify
'iOS' 카테고리의 글 목록 (3 Page)