UICollectionView의 isSelected 프로퍼티 UICollectionvViewCell에는 isSelected라는 내장 프로퍼티가 있다. 이름에서 알 수 있듯, 해당 셀이 선택되었는지를 나타내는 프로퍼티다. isSelected는 UICollectionView delegate의 didSelectItemAt, didDeselectItemAt과 함께 불리기 때문에, 이런 식으로 셀이 선택되거나 선택이 해제되었을 때 setSelected와 같은 핸들러 메서드를 만들어 액션을 정의해 줄 수도 있다. override var isSelected: Bool { didSet { setSelected(isSelected) } } isSelected 프로퍼티는 직접 그 값을 변경하면 안 된다 위 isSelect..
외주로 iOS 앱 개발을 하고 있는데, 키워드 버블을 구현해달라고 한다. 대충 이렇게 생긴 .. 당연히 레퍼런스는 없었다. 어딘가 한 번쯤 보게 생겼는데, 했을 때쯤에는 웹에서는 많이 봤지만 앱에서는 한 번도 본 적이 없다는 것을 깨달은 후였다. 막막했다. 막막하게 한 3일 정도 라이브러리 서치와 어떻게 구현할 수 있을지, javascript로 구현해서 web뷰 이식을 하는 방법이 나을지 별의 별 궁리를 다 했다. 그러다가 기적처럼 라이브러리 딱 하나를 발견했다. https://www.highcharts.com/ Highcharts라는 다양한 차트 라이브러리였다. 이미 웹 프론트엔드, 안드로이드, iOS 환경 모두를 지원하고 있었다. 깃허브를 잠시 살펴 보니 마지막 업데이트를 한지 1달도 채 되지 않을 ..
생각보다 개발을 하다보면 pickerView를 쓸 일이 꽤 많은 것 같다. 그래서 보통 피커뷰로 날짜를 설정하려고 하면 iOS에서 기본으로 제공하는 UIDatePicker을 사용하는데, 예쁘고 간편하긴 하지만 커스텀이 제한적이라 실제로 서비스에서 사용해본 적은 많이 없는 것 같다. 대신 커스텀이 용이한 UIPickerView로 UIDatePicker를 흉내내는 방식의 구현을 자주 사용한다. iOS 프로젝트 개발에서 생각보다 많을 것 같지만, 한글로 된 블로그 글이 몇 개 없는 것 같아 정리해보는 오늘의 주제는 아래처럼 정했다. UIPickerView로 년, 월만 선택 가능한 피커 만들기 구현 방법 1. 텍스트필드 얹기 피커뷰를 뷰에 컴포넌트로 얹을 수도 있지만, 보통은 코드로 많이 생성한다. (뇌피셜로는..
인스타그램을 하면서 항상 궁금했다. 내 스토리에 친구들이 하트를 눌러보면 보이는 저 하트가 올라가는 애니메이션은 어떻게 구현한 걸까? 유니티로는 파티클 애니메이션을 구현해 본 적이 있는데, Swift로 네이티브 iOS 앱을 만들 때는 어떻게 만들어야 할지 감도 안 왔다. 이것저것 찾아보니 방법에는 크게 두 가지가 있었다. CAEmitterLayer와 SpriteKit에 포함되어 있는 SKEmitterNode다. SKEmitterNode 위에서 잠깐 설명했듯, Swift로 게임을 만들 수 있게 지원하는 SpriteKit에 포함되어 있다. 인스펙터에서 실제 파티클이 생성되는 모습을 보며 값들을 조정해줄 수 있어 편리하다. 하지만 UIView에 올리기 위해서는 SKView라는 SpriteKit의 뷰를 하나 만..