All
-
TIL - 2022년 02월 04일TIL/2022 2022. 2. 5. 04:05
iOS Slide Menu를 구현하는 방법에 대해서 공부를 했다. pinGesture 따라서 slide메뉴가 펼쳐지고 다시 들어가는 기능과 background의 alpha가 그에 맞춰서 변화하는 로직을 구현했다. 이전에 공부했던 layer가 cell의 크기가 변경될 때 제대로 적용되지 않는 문제가 발생했다. view layout에 대한 문제인가 싶어서 viewLayout 관련 메서드를 다시 자세히 공부해보고 collectionView에 대해서도 다시 복습을 했는데.. 여기에 문제는 아닌 거 같다.
-
TIL - 2022년 02월 02일TIL/2022 2022. 2. 3. 03:58
Swift map, flatMap, compactMap에 대해서 공부를 했다. 이전에는 flatMap과 compactMap의 차이를 알지 못했고 map과 차이도 단치 옵셔널을 풀어준다고 알고 있었지만 한정적인 부분만 이해했다는 것을 알게 됐다. iOS navigationController와 customDelegate를 활용해서 화면 전환과 데이터 전송에 대한 예제 앱을 만들어 보았다. UIColorWell과 UIColorPickerViewController에 대해서 공부를 했다. iOS14.0부터만 사용 가능하다는 단점이 있지만 Color를 선택해야 할 때 아주 좋은 기능임에는 틀림없는 거 같다!
-
TIL - 2022년 01월 31일TIL/2022 2022. 2. 1. 03:39
iOS 직접 화면을 구성해보면서 CollectionView에 대해서 복습을 했다. 기본으로 제공하는 FlowLayout을 이용하는 게 아니라 콘텐츠의 사이즈에 따라서 item의 높이가 각각 다른 화면을 구성하기 위해서 CustomLayout을 구현하는 방법에 대해서 공부를 했다. CustomLayout을 구현하기 위해서 필수적으로 구현해야 하는 collectionViewContentSize, prepare(), layoutAttributesForElements(in:), layoutAttributesForItem(at:) 메서드에 대해서 알아보고 어떻게 구현해야 하는지 공부했다. 나름 마음에 드는 화면을 만들었지만 문제는 collectionView의 bound가 변경되는 경우에 대해서 처리하려니 코드가 ..
-
iOS - UIScrollView 사용하기Programming/iOS 2022. 1. 31. 12:45
안녕하세요 BeePeach입니다 :) 오늘은 ScrollView를 사용하는 방법에 대해서 알아보려고 합니다. content에 따라서 스크롤 또는 확대/축소가 가능한 View를 만들고 싶을 때 사용합니다. 물론 tableView나 collectionView로 구현할 수 있지만 cell을 생성하지 않고 간단하게 스크롤 화면을 만들고 싶을 때 주로 사용합니다. 간단하게 확대 기능을 사용하고 싶다면 주로 Gesture Recognizer를 이용하면 됩니다. 알고 보면 사실 UITableView나 UICollectionView도 UIScrollView를 서브 클래싱하고 있는 것을 확인할 수 있습니다. 그럼 ScrollView를 어떻게 사용하는지 같이 공부해보도록 하겠습니다. 이 포스팅은 Autolayout을 어느..
-
iOS - Storyboard Merge ConflictProgramming/iOS 2022. 1. 30. 16:40
안녕하세요 BeePeach입니다. 오늘은 Storyboard를 이용해서 팀 프로젝트를 진행할 때 merge conflict가 발생하는 상황에 대해서 알아보고 해결 방법과 방지하는 방법에 대해서 공부해보려고 합니다. 이 포스팅은 아래 블로그를 번역하고 개인적인 설명을 조금 덧붙인 글입니다. Handling Storyboard Merge Conflicts Storyboards are a very useful tool for developing user interfaces in iOS, macOS, tvOS, and watchOS. In addition to providing a way to visually lay out an interface with Auto Layout, they provide a way..
-
TIL - 2022년 01월 29일TIL/2022 2022. 1. 30. 03:08
Swift map, filter, reduce에 대해서 복습을 했다. reduce는 매번 공부해놓고 쓰질 않아서 계속 까먹었는데 이 참에 포스팅해서 박제시켰다. iOS VC의 lifecycle에 대해서 복습했다. 그리고 화면 간 데이터를 전송하는 방법에 대해서 복습을 했다. 예를 들어 prepare 메서드, notification, custom delegate! 화면 전환과 데이터 전송을 이용한 예제 앱을 개발했다. 물론 다 개발한 건 아니지만 데이터 전송은 매번 사용하던 prepare, notification이 아닌 delegate로 구현해봤다.