[iOS] UICollectionView Custom FlowLayout
최근에 업무중 개선포인트 를 정리하고자 합니다. 우선 iPhone, iPad 두가지 화면에서 SubMenu 부분의 Page처리가 된 icon부분을 하나의 View로 사용하여, 진입 및 그리는 부분의 통일화를 시키고자 합니다. 기존에 iPhone, iPad 두가지의 Xib가 따로 존재하였고 Xib를 합치는 과정에서 최대한 작업을 줄이고자 생각을 하였다. (이미지 참조) iPad 화면 iPhone 화면 우선 기존의 작업은 All CodeType에 - ScrollView + UIButton 좌표식 으로 되어있었다. iOS 7~8 부터 진행된 프로젝트이며, 급하게 진행되고 있었기 때문에 해당 방법은 틀리다고 생각하진 않으나, View가 Add가 되면 될 수록 좌표값이 맞지 않는 오류가 발생 하였다. 유지보수를 하는 개발자분들이라면, 이해하실게 다른사람이 짠 코드중 x,y 좌표 +3 이런식으로 되어있는 코드는 개발 당시에는 당연하게 이해하면서 작업이 진행되겠지만, 나중에 봤을때는 본인도 "뭐지..?" 라는 생각이 드는 코드이다. 필자도 이런코드를 최대한 개선하고 최신코드로 유지하는 부분을 작업할까 합니다. 그렇다면 기존에 방법에서 최대한 깔끔하게 개선하는 점은 어떻게 할까 고민을 하여 2가지 방법으로 구현하는 방법을 생각했다. 1. ScrollView + StackView 2. CollectionView 1번 방법 은 필자가 StackView를 자주 사용하다보니 당연하게 생각한 방법으로 폰일때는 문제가 없으나, 패드일때 조금 귀찮지만 Pageing 처리시 불필요한 Stack의 생성 결국 iPhone, iPad 부분에서 View의 갯수 및 계산법이 달라진다는 부분에서 과연 맞는걸까 고민하였다. 2번 방법 은 기존에 필자는 CollectionView는 기본적인 방법으로 사용하였었고, (이미지 참고) 가로 세로방향에 따라 그려지는 순서가 원하는 방식이 아