-
일기장 앱iOS/패스트캠퍼스(앱제작) 2022. 4. 20. 21:37
< 주요 기능 >
1. 일기장 작성/수정
- 유효성검사: 세가지 항목이 모두 작성되어야 Done버튼 활성화
- notification center2. 일기장을 등록 할때마다 첫번째화면(UICollectionView)에 추가
- delegate패턴3. 일기장 삭제
- delegate 패턴: detailViewController에서 삭제 전달 -> UICollectionView에서 삭제 구현
- notification center 패턴:4. 즐겨찾기 기능
- fiter고차함수 활용
1. 일기장 작성 / 수정
- 유효성 검사
textView는 UITextViewDelegate를 통해 값 변화 감지
- notification center를 통해, DiaryDetailViewController에서 수정 버튼 클릭시 수정된 내용을
WriteDiaryVC, UICollectionVC 두 곳에 전달2. delegate로 데이터 전달
- diary구조체 정의
- WriteDiaryViewController에 protocol정의 (메소드 파라미터로 diary객체 전달)- 일기장 등록 버튼 클릭시 마다 diary객체 생성, delegate로 객체 전달
- UICollectionView에서 delegate 메소드 구현 --> 정의한 diaryList에 생성된 diary객체 추가
- UICollectionViewDateSource와 UICollectionViewDelegate를 통해 diary객체들을 화면에 표시
- Diary구조체 정의
3. 일기장 삭제
3.1 delegate
- UICollectionViewController에서 특정 collectionViewCell 선택 시 해당 cell의 diary를 DiaryDetailViewController에 전달
- DiaryDetailViewController에서 삭제할 diary의 indexPath전달
(전달하는 곳에서 protocol 정의)- UICollectionViewController에서 indexPath를 전달받아 diaryList와 CollectionView에서 diary삭제
(받는 곳에서 protocol 메소드 구현)// 1대1로만 데이터전달 가능
// 일기장 상세 화면에서 삭제,즐겨찾기 시 -> 일기장 화면으로 전달
// 일기장 화면에서 -> 일기장 상세화면 이동시. 일기장 화면에만 delegate가 데이터 전달 가능
// 즐겨찾기 화면에서 -> 상세화면 이동시. 즐겨찾기 화면에만 delegate가 데이터 전달 가능
3.2 notification center
일기장 상세화면에서 삭제/즐겨찾기 선택 시, 일기장화면 & 즐겨찾기 화면 모두에 이벤트 전달
- 일기장 상세화면에서 notification 등록 (post)
- 일기장화면에서 notification 옵저빙 (addObserver)
- 즐겨찾기 화면에서 notification 옵저빙 (addObserver)
'iOS > 패스트캠퍼스(앱제작)' 카테고리의 다른 글
날씨 앱 (0) 2022.05.08 타이머 앱 (0) 2022.05.08 할일 리스트(To-Do List) 앱 (0) 2022.04.03 계산기 앱 (0) 2022.04.03 LED전광판 앱 (0) 2022.04.01