[iOS 향유] 카테고리 상단 탭 구현과정
기능 구현
✅ 라이브러리 설치 및 삭제 방법
https://zeddios.tistory.com/25
왕 초보를 위한 CocoaPods(코코아팟) 사용법 (Xcode와 연동)
안녕하세요! 오늘은 CocoaPod사용법에 대해 알려드릴려고해요 :) 저는 CocoaPod 처음에 시작할 때 뭐가 뭔지 몰라서 정말 하나도 몰라서 진짜 어려운거구나...라고 생각했었어요. 하지만 한번 배워 놓
zeddios.tistory.com
✅ 상단 탭바 'Tabman' 라이브러리 활용
https://developer-p.tistory.com/161
iOS | 탭맨(TabMan) | 탭맨 라이브러리 예제 및 커스텀 방법. (Examples and customization of the Tabman library.)
ZigZag 클론 코딩을 하면서 상단 탭바 구현이 필요했습니다. 상단 탭바는 직접 구현할 수도 있고, 혹은 다양한 라이브러리를 활용해 구현할 수 있습니다. 아래 영상은 상단 탭바 - 탭맨 라이브러
developer-p.tistory.com
https://gonslab.tistory.com/17
iOS Swift 라이브러리 Tabman 사용하기
안녕하세요 Gons 입니다. 오늘은 안드로이드의 ViewPager 같은 라이브러리 Tabman 을 사용해보겠습니다. 기본탭바는 커스텀하기 힘들고 스크롤로 전환되지 않기 때문에 Tabman 을 사용해보겠습니다. 가
gonslab.tistory.com
https://swiftpackageregistry.com/uias/Tabman
Tabman - Swift Package Registry
swiftpackageregistry.com
✅ 라이브러리 사용 중, 'Force Cast Violation: Force casts should be avoided. (force_cast)' 오류 발생
아래 두개의 해결방법 중(경고 무시, 강제 캐스팅), 위의 방법인 경고 무시 방법을 사용하였다.(시간 촉박..)
만약, 코드 리팩터링 시간을 가진다면 아래 방법처럼 코드 수정할 것!!!
https://github.com/realm/SwiftLint/issues/145
How to ignore some instances of the force cast rule · Issue #145 · realm/SwiftLint
I have some cases where I want to use a force cast - e.g. when it would be a programming error if the force failed. One example is loading a view controller from a storyboard. Is there any way to i...
github.com
SwiftLint를 적용하면서 수정한 것들🙀
🐥입사 전에는 프로젝트를 할 때, 항상 SwiftLint를 적용하며 개발했었다. 입사 후, 회사 프로젝트에서는 린트가 적용되어 있지 않았고, 그 필요성을 느껴 린트 적용을 제안했다. 작성되어 있던 코
pilvi.tistory.com
✅ 상단탭바 개발과정 중 겪은 오류
처음에 두번째 방법으로 코드작성을 하고 있었는데 "dispatchqueue.executeinmainthread thread 1: exc_bad_access (code=2, address=0x7ffee7ac4ff8)" 에러가 발생했다. 이 때는 collectionview를 먼저 만들고 탭바를 추가했기 때문에 안되는 것 같아 새로 스토리보드를 다시 작성했다. (아직 이 오류가 왜 나왔는지 아직 해결 못했다.. collectionview 때문인가..?)
그 후, 최신순-인기순-무료-유료로 바뀌면서 아래와 같이 각각 메뉴에 따른 화면 색이 바뀌어야 하는데 색(화면)이 바뀌지 않는 오류가 생겼고 Tabman 라이브러리 구글링을 엄청 했는데 나아지지 않았다.
코드 작성을 두가지로 나누어서 시도해보았는데
- 배열에 뷰컨을 직접 할당해서 작성(https://velog.io/@iammiori/iOS-opensource-tabman)
- 빈 배열을 사용하고 뷰컨을 따로 append (이 방법으로 해결!)
BUT! 팀원 언니의 도움을 받아서 배경을 바꾼 것은 스토리보드에서 한 것이기 때문에 코드에서 스토리보드랑 연결하기 위해서는 instantiateviewcontroller가 필요할 것 같다는 의견을 받아서 두번째 방법으로 해결하였다!!
해야할 것
하지만 지운 collectionview를 다시 넣어야한다..
했던 거니깐 빨리 할 수 있겠지...?