목록swift, Ios (22)
써니쿠키의 IOS 개발일기

KVO로 구현한 데 이어서 같은 화면 내용을 노티피케이션센터를 이용해서 만들어보았다 텍스트필드에 내용을 적은 후 등록버튼을 누르면 밑에 있는 텍스트뷰에 똑같은 내용을 띄우는 코드이다. ( 보통 알림을 주는곳과 Observer가 서로 다른 타입에 만들어지지만 여기서는 ViewController Class 안에 모든걸 구현해보았다 ) 노티피케이션 센터 구현은 아래 네가지를 차근차근 구현하면된다. POST: 노티피케이션센터에서 값 전달하기 Observer 등록하기 Observer가 실행할 함수 만들기 Observer 제거하기 1. POST : 노티피케이션센터에서 값 전달하기 func notificate(writedThing: String) { NotificationCenter.default.post(name:..

KVO 구현하기 오늘은 KVO 예제를 만들어보았다 텍스트필드에 내용을 적은 후 등록버튼을 누르면 밑에 있는 텍스트뷰에 똑같은 내용을 띄우는 코드이다. 1. 트랙킹 할 정보 지정하기 class Writhing: NSObject { @objc dynamic var writedThing: String init(writedThing: String) { self.writedThing = writedThing } 트랙킹 할 변수가 담겨있는 타입은 상속을 위해 Writing을 class타입으로 구현해줘야한다. class에서 NSObject를 상속받는다. 트랙킹 할 writedThing 프로퍼티에 @objc attribute와 dynamic modifier 를 부여한다. (프로퍼티에 기본값이 없어서 init코드도 만들..

✔️ AutoLayout ?? 오토레이아웃은 뷰의 크기와 위치를 제약(constraints)을 기반으로 결정하는 것이다. 내부/외부적요인으로 뷰가 유동적으로 변하기 때문에 오토레이아웃을 사용한 UI를 구성하면 변동에 대응이 가능하다. ✔️ Anatomy of a Constraint 1. 제약조건의 구성 ( y = mx + c ) 실제로 이런 식을 직접 코드로 작성하거나 구성할 일은 없지만 제약을 이해하기 위해 살펴보면 좋다. 위의 식을 해석하면 보면 Red View의 Leading(=Left) 은 Blue View의 trailing(=Right)로부터 1배로 8.0 떨어져있다고 제약을 준 것이다. 이런 제약을 주면 blueView를 움직이면 8의 거리를 둔 체 RedView가 따라다니게 된다. 2. At..

열거형 연관된 값(Associated Values) 🤓 어쩌다 공부하게 되었는가..? 써머캣과 쥬스메이커 코드를 작성하다가 열거형(enum)으로 정리한 쥬스타입의 case마다 사용하는 원재료의 갯수를 연관지어 지정해놓고 싶었다. 예를들면 딸기바나나쥬스는 딸기10개 바나나1개를 사용하기 때문에 case 딸기바나나쥬스 를 case 딸기바나나쥬스(딸기: 10, 바나나:1) 로 연관값을 사용할 수 있지 않을까!? 했던 시도 중에 공부하게되었다.. ⛔️결론은 연관값은 사용할 때마다 연관값은 달라진다의 특성때문에 Fix의 개념이 아니라서 사용하지 않았지만! 공부했던 내용이니 정리해두자..! 열거형의 연관값이란? 공식문서 소개 ( 출처 : Swift 공식문서 - Enumerations 중 Associated Valu..