오늘하루 개발 일지(15)
-
9주차 iOS - 2021.10.17 ~ 2021.10.23
ADD) Theme View 추가 기존에 있던 View에 Section을 나눠서 Theme Cell을 추가하였다. Section을 분리하여 ThemeCell, AppearanceCell의 Selection 이벤트를 분리하였고 update를 한 다음 TableView를 Refresh 해주었다. 또한 기존의 AppearanceCell 처럼 UserDefault를 통해 값을 저장하고 App이 Launch가 진행 중일 때 테마 값을 변경하도록 해 주었으며 RxTheme의 ThemeService의 switch를 이용해 기존에 지정해놨던 Theme의 프리셋 중 하나로 변경할 수 있도록 제작하였다. 아직 RxDataSource + ReactorKit을 쓰는 방법에 익숙해지지 않은 것 같다. 그래서 조금 더 효율적으로..
2022.04.26 -
8주차 iOS - 2021.10.10 ~ 2021.10.16
ADD) Theme View 추가 테마를 변경할 수 있도록 Theme View에 관한 Controller와 Reactor를 추가했고 Tableview를 추가했다. AppearanceSelectCell을 추가하여 cell을 선택했을 때 라이트 / 다크 모드를 선택할 수 있도록 했다 이번에 Tableview를 사용하면서 RxDataSource를 채택하였고, 이걸 ReactorKit과 결합하여 사용하기 위해 공부를 많이 했다. cell별로 reactor를 각각 하나씩 만들어 넣어주었고 cell은 값을 바인딩하여 보여준다. AppearnaceSelectCell은 하나만 선택가능하기에 선택된 index값을 저장하고, 그 값이 있는 셀의 reactor에만 state에 isSelected를 전달하도록 설정했다. 선택..
2022.04.26 -
7주차 iOS - 2021.10.03 ~ 2021.10.09
ADD) Search View 추가 Search View를 추가했고 DiarySearchBar를 만들었다. DiarySearchBar는 커스텀 버튼을 왼쪽에 배치해 눌렀을 시 navigation controller를 pop 할 수 있도록 설계했으며 이를 navigation bar의 title view로 적용하였다. 원래 UISearchViewController를 적용하려고 했으나 내가 원하는 디자인과 맞지 않아 일반 UIViewController에 search bar를 넣고 사용하기로 하였다. UPDATE) Clear Button 색 변경 TextField나 SearchBar에서 기본 기능으로 추가할 수 있는 Clear Button의 Tint Color가 디자인과 색상이 조금 달라 어떻게 할지 방법을 찾..
2022.04.26 -
6주차 iOS - 2021.09.26 ~ 2021.10.02
UPDATE) DiaryTextField 에러 메시지 업데이트 기존 TextField는 입력하지 않아도 에러가 발생한걸로 인식되어 텍스트 필드 위쪽에 에러 메시지가 떠 있었으나, Validation 부분을 수정하여 비어있을 시 DiaryTextField가 에러 메시지를 출력하지 않도록 업데이트하였다. 또한 입력한 내용이 정확하다면, 에러 텍스트 대신 원하는 문구를 띄울 수 있도록 설정하였다. UPDATE) LoginView 소셜 로그인 레이아웃 적용 추후 생길 소셜 로그인을 지원하기 위해, 대체 이미지로 레이아웃을 맞추고, 키보드에 따라 레이아웃이 변하여 사용자 경험을 망치지 않도록 업데이트하였다. RxKeyboard를 통한 레이아웃 update 방식을 사용하였는데, 일일이 설정을 해주어야 해서 상당히 ..
2022.04.26 -
5주차 iOS - 2021.09.19 ~ 2021.09.25
UPDATE) 레이아웃 업데이트 사용자의 다양한 기기에서 오늘 하루를 제공하기 위해서 레이아웃을 업데이트하였다. 화면이 큰 최신 아이폰들에는 정상적으로 보이지만, 옛날 작은 구형 아이폰 (iPhone SE) 시리즈에서 오늘 하루를 제공하기 위해서 화면 사이즈에 맞게 유동적으로 레이아웃을 조정할 수 있도록 다양한 뷰의 레이아웃들을 업데이트하였다. UPDATE) Floating View 업데이트 기존 Floating View에 있던 요소들이 너무 정적으로 움직이는 것 같아 값이 변경될 때마다 animation과 함께 뷰가 업데이트되도록 코드를 수정하였다. (RxAnimated) 기존의 일기가 Floating View에서 스크롤이 막혀있어 일정 길이가 넘어가면 볼 수 없다는 단점이 있었다. 그래서 Scroll..
2022.04.26 -
4주차 iOS - 2021.09.12 ~ 2021.09.18
ADD) RealmService 추가 RealmService를 만들었다. 기존처럼 Reactor에서 직접 Realm 객체를 생성하여 사용하는 건 비효율적이라고 판단했고, RealmService를 만들어서 Realm을 사용하는 reactor에 이 service를 의존성 주입하여서 read, write, update, delete를 조금 더 효율적으로 사용할 수 있도록 만들었다. UPDATE) UserService추가 및 Floating Panel View 사용성 개선 floating view에 관한 global state를 UserService를 통하여 처리했다. 개념 자체는 어렵지 않았지만 구현 방식에 대해서는 아직 공부할 점이 많이 남았다. ReactorKit이 상당이 잘 만들어져 있는 라이브러리임을 ..
2022.04.26