본문 바로가기
728x90
반응형

전체 글254

ERROR ) StoryBoard - Fatal error: Unexpectedly found nil while unwrapping an Optional value 안녕하세요 후르륵짭짭 입니다. 이번에는 found nil while unwrapping an Optional Value 에 대해서 알아보도록 하겠습니다. var liveItems : [liveModel]? { didSet{ if liveItems?.isEmpty == true { noserviceClosure = { UIView.animate(withDuration: 0) { self.noLiveView.alpha = 1 } } } else{ headerViewItem = liveItems![0].data[0] liveItems![0].data.removeFirst() DispatchQueue.main.async { [weak self] in self?.liveCollectionView.reloadDat.. 2020. 12. 17.
IOS) TableVIew의 Pagination을 구현해보자 안녕하세요 후르륵짭짭 입니다. 이번에는 TableView에서 Pagination을 구현하는 방법에 대해 설명하려 합니다. 정말 간단한 것 입니다. ** ContentOffSet 과 contentSize 란 ** 위의 그림을 보면 ContentOffset 과 contentSize에 대해서 쉽게 알 수 있을 겁니다. contentOffset은 현재 보여지는 ScrollView의 마지막 위치를 의미합니다. 그래서 현재 스크롤 하는것 자체가 contentOffSet에 변화를 주게 됩니다. 반면 ContentSize는 TableView난 ScrollView 자체의 크기 입니다. 따라서 위에서 보면 우리가 보여지는 영역을 넘어서 보여지지 않은 View의 전체적인 크기가 ContentSize라 할 수 있습니다. **.. 2020. 12. 17.
IOS) TableView의 Section을 다뤄보자 안녕하세요 후르륵짭짭 입니다. 이번에는 TableView의 Section을 다뤄보도록 하겠습니다. Section은 어떻게 구성되고 어떻게 Section을 꾸밀 수 있을지 보도록 하겠습니다. ** Section의 총 갯수 ** 일단 Section을 몇개 필요한지 알려줘야합니다. func numberOfSections(in tableView: UITableView) -> Int { return itemData?.count ?? 0 } Section은 하나의 큰 군집이라 생각하면 될 것 같습니다. 하나의 군집에 자잘한 내용들이 들어가 있고 자잘한 내용들이 Cell 입니다. 그러니깐 Section 안에 Cell이 포함되어 있는 것 입니다. ** Section의 내부의 Cell 갯수 ** numberOfRowsI.. 2020. 12. 13.
IOS) 동적인 TableView Cell을 만드는 방법 안녕하세요 후르륵짭짭이 입니다. 이번에는 TableView Cell을 동적으로 만드는 방법에 대해 알아보려고 합니다. 항상 동적인 Cell을 어떻게 하면 개발할 수 있을지 궁금했는데,,, 이번에 좋은 기회를 잡게 돼서 올려보려고 합니다. 그리고 TableViewCell 안에 TableView를 넣는 것 까지 다뤄보도록 하겠습니다. ** StoryBoard로 구현하기 ** 일단 저의 스토리보드는 이렇게 구성되어 있습니다. 일단 MainCell은 코드로 크기가 조절 됩니다. func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat { return CGFloat(Cell의 크기) } 따라서 MainCell의 .. 2020. 12. 12.
PlayGround ) Closure의 기능은 무엇인가? 안녕하세요! 후르륵짭짭 입니다. 이번에는 Closure에 대한 저의 착오를 말씀 드릴려고 합니다. 전 Closure를 값을 받아 수행하는 함수라고 생각했습니다. 그러니깐 함수 내부에서 클로저를 수행한다고 하면, 아래의 순서대로 작동하는 줄 알았습니다. func mistake(closure : () -> ()){ //(1) closure() } mistake { //(2) print("Hello world") } 그래서 closure()를 수행하면 trailing Closure 부분인 print("Hello world")를 수행하는 줄 알았습니다. 하지만 완전 반대 였습니다. func mistake(closure : () -> ()){ //(2) closure() } mistake { //(1) print.. 2020. 12. 8.
IOS) Timer를 이용한 UI 처리를 배워보자 안녕하세요! 후르륵짭짭입니다. 일주일만에 글을 올리게 됐는데요,,, 최근에 마냥 행복한 일만 있는게 아니였고,,, 기말고사여서 글을 자주 올리기에는 어려움이 쫌 있었습니다. 그럼 이번에 공부한 것을 올려 보도록 하겠습니다. Timer라는 것인데요. 우리가 반복적인 애니메이션을 보여줄 때, 유용하게 사용 할 수 있을것 같습니다. (할게 참 많은거 같습니다 ㅠㅠ) ** What is Timer ** Timer의 정의를 보면 특정한 시간 간격이 지난 후에 발생하는 것이 라고 정의 되어 있습니다. 이게 무슨 말이고 하면,,, 그냥 특정 시간 지나면 작동하는 거 라고 생각하시면 됩니다. 이게 쫌 중요한 말인데,, Timer는 Run Loop랑 결합되어 작동한다라고 적혀 있습니다. 그리고 Run Loop는 Time.. 2020. 12. 4.
IOS) Local Notification을 이용해보자 2부 안녕하세요 후르륵짭짭 입니다. 이번엔 저번에 이어서 Local Notification에 대해서 알아보려고 합니다!!ㅎㅎㅎ 2020/11/22 - [Xcode/IOS] - IOS) Local Notification을 이용해보자 1부 저번에는 Local Notification에 대한 정의와 간단한 호출 방법 그리고 ForeGround에서 보여지는 방법에 대해서 공부 했습니다. 이번에는 Badge의 숫자를 줄이는 방법, 그리고 알림에 선택지를 만들어 주는 방법과 그에 따라서 상황에 맞게 기능을 작동 시키는 방법 등 여러가지를 알아보려고 합니다. ** 시작하기 ** - Badge 초기화 하기 - //일반적인 Notification 호출 방법 func generateNotification(){ let conten.. 2020. 11. 25.
IOS) Local Notification을 이용해보자 1부 안녕하세요 후르륵짭짭 입니다 한 일주일 만에 글을 쓰는 것 같습니다 ㅎㅎㅎ 최근에 면접 준비랑,,, 시험 준비한다고 IOS 공부를 너무 허술하게 한 것 같네요 반성 하도록 하겠습니다. 이번에는 항상 궁금했던,,, Notification을 공부 해보고 싶었습니다. 어떻게 하면 알림창을 띄어 줄 수 있을까,,, 그래서 유튜브로 열심히 찾아봤습니다. ** 배워 볼 것 ** 이번에는 여러가지를 배워 볼 것 입니다. - 알림 확인 받는 방법 - 간단한 Local 알림 보내는 방법 - foreground에서 알림 받게하는 방법 - Badge 카운드 초기화 하는 방법 - 알림을 클릭 했을 때 특정 화면으로 이동하는 방법 이렇게 여러가지를 배워 볼 것인데,,, 근데 각 라이브러리를 깊게 공부하기는 힘들 것 같습니다. .. 2020. 11. 22.
PlayGround) Notification을 이용해서 데이터를 전송하자! 안녕하세요 후르륵짭짭 입니다! 이번에는 Notification에 대해 알아보려고 합니다!! Notification은 말 그대로 알려주는 것을 의미합니다. 이전에 Delegate로 ViewController 간의 통신을 하게 만들었는데, 그것과 비슷하게 서로 데이터를 보내주고 통신 할 수 있도록 하는 걸 Notification이라 합니다!! 2020/11/04 - [Xcode/Swift - PlayGround] - PlayGround) Delegate와 Delegate Data Pass를 알아보자! PlayGround) Delegate와 Delegate Data Pass를 알아보자! 안녕하세요! 후르륵짭짭 입니다. 이번에는 Delegate와 Delegate를 활용해서 ViewController 간의 데이터.. 2020. 11. 16.
728x90
반응형