본문 바로가기

swift24

SwiftUI 의 Navigation 기능 간단하게 써보기 굿데이 여러분 롱타임 노씨입니다 WWDC 는 즐겁게 보셨나요? 저는 꿀잠자고 다른 분들이 열심히 정리해주신 부분을 살펴보았는데 많이 좋아진거 같아서 마음이 편하네요 그 김에 슬슬 스유를 공부해야할것 같아서 오늘은 SwiftUI 에서 네비게이션 기능을 활용해보도록 하게씀미다 SwiftUI 는 아시다시피 기존의 UIKit 과 다르게 View 라는 protocol 을 채택한 struct 를 만들어서 씁니다 기존의 NavigationController 를 사용할 수 없기 때문에 비슷하게 찾아보면 NavigationView 와 NavigationLink 가 있는데요 이 두 가지만 잘 활용하시면 기본적인 Navigation Controller 를 구현하실 수 있습니다 struct ContentView: View {.. 2020. 6. 23.
AutoLayout Debugging in UITableViewCell 안녕하세요 여러분ㄴ 오늘도 간단한 주제를 가져왔읍니다 많은 iOS 개발자들이 즐겨 사용하시는 오토레이아웃에서 발생하는 오류? 를 해결하는 방법인데여 사실 잘 돌아가고 그림도 잘 그려지는데 이상한 로그가 찍히는 경우가 겁나 많았죠? 저도 뭐 급하고 할땐 잘 그려지니까 넘어가자; 하고 넘어갔는데 돌이켜 생각해보니 조금 분하고 그래서 디버깅을 좀 해봤읍니다 아주 간단한 셀을 만들어봤는데여 오토레이아웃도 아주 간단하게 이미지의 높이를 160으로 지정해주고, aspect Ratio 1:1, Top 10, CenterY 를 맞췄습니다. 그리고 UITableView.AutomaticDimension 으로 자동 높이 계산을 때려주면 당연히 180이 나올 줄 알았는데요..웬걸 180.333 이따구로 나오면서 디버깅 메시.. 2020. 4. 17.
Protocol Default Implementation in Swift 안녕하세요 여러분 오늘은 간단한 스위프트 관련 주제를 들고 와봤습니다. 바로 Protocol Default Implmentation 인데요! 저도 알게 모르게 사용하던 것이었는데 헷갈리지 않게 정리를 좀 해보도록 하겠습니다. 프로토콜은 기본값을 구현해놓지 않고 해당 프로토콜을 채택한 부분에서 관련된 기능을 구현하기 위해 사용하는 경우가 저는 좀 많았는데요. Default Impementation 을 사용하게 되면 마치 class 에서 부모의 함수를 사용하는 것과 비슷하게 구현을 할 수가 있게 됩니다. 바로 extension 으로 구현을 하면 되는데요. 아래와 같이 작성하시면 됩니다. protocol CustomProtocol { func say(msg: String) } extension CustomPr.. 2020. 4. 10.
예제로 살펴보는 MVI Design Pattern with RxSwift 안녕하세요 여러분? 저번 시간에는 MVVM 디자인 패턴을 살펴보았는데요. 이번에는 약간 생소한 MVI 라는 패턴을 들고 찾아왔습니다. MVI 는 Model - View - Intent 로 구성되어 있는 단방향(Uni-Directional) 아키텍쳐 중 하나인데요. MVVM 의 경우 VM 이 Model 과 View 의 사이에서 양방향으로 통신하기 때문에 자칫 잘못하다간 VM 이 비대해지는 부작용이 발생할 수가 있습니다. 이러한 부작용을 해결하기 위해서 MVI 의 경우는 뒤를 돌아보지 않는 단방향 상남자의 아키텍쳐라고 볼 수 있겠습니다. View 에서 액션을 입력 받으면 Intent 에서 모델의 상태를 변환시키고, 그 변환된 상태의 모델을 뷰에 전달하여 유저에게 보여준다고 보시면 되겠습니다. 그런데 이렇게 .. 2020. 4. 8.