문제는 총 두가지

  1. 지출 추가를 하고 이전 화면으로 돌아왔더니 그래프에 반영이 안된다!
  2. 스크롤 했다가 다시 올리면 애니메이션이 동작해서 그래프 반영이 되긴 하지만 이럴 땐 안되야 하는 게 맞지 않나!!
    1. 게다가 이럴 땐 아래에 레이어가 그대로 깔려 있는 상황에서 다시 애니메이션이 동작하면서 덧씌워지는 듯한 효과로 동작한다.. 이건 왜 이러는지도 모르겠음

우선 2번 문제부터 해결을 해보려고 한다.

내 생각엔 configureData 안에 애니메이션을 다 때려넣어버려서 생긴 문제가 아닐까 싶긴 한데 문제는.. 이렇게 하지 않으면 애니메이션 하는 시점이 애매해짐

일단 내가 원하는 동작을 명확히 정리해보면!!

  1. 처음 지출 내역 진입했을 때 애니메이션 동작 🙆‍♀️
  2. 사용자가 스크롤 했다가 다시 올릴 땐 동작 ❌
  3. 지출 추가 완료 후 다시 내역으로 돌아왔을 땐 애니메이션 동작 🙆‍♀️

딱 들어가서! 애니메이션은 처음에만 실행되고! 스크롤을 할 때는 동작 안하고! 지출 추가 하고나서 다시 돌아오면 되고!! 이걸 원하는데!! 안됨… ㄹㅇ 웨 않됨??

그리고 애니메이션 덧 씌워지는 건 진짜 모르겠다 왜 저럴까??

→ 데이터 변화가 없어도 계속 setupData를 실행시켜줘버려서 아마 중복이 되어버린 듯 하다.. 기존의 didSet 처리 되어 있던 것들을 willSet으로 처리해서 일단 해결했다!

⇒ 이것도 근본적인 해결책은 안되는 것 같아서 다른 해결 방법을 찾아보다가 setupData에 기존 레이어를 삭제하는 메서드를 안 넣어준 것을 발견했다…! 어차피 기존 레이어가 없으면 forEach 문이 실행되지 않으니까 이 로직을 추가해줘서 문제를 해결했다. 하지만 스크롤할 때는 동일하게 동작해서는 안되니까 위의 해결책이랑 함께 적용해줘야할 수도 있겠다..

이따가 다른 화면 갔다가 오면 어떻게 되는지 확인해보고 싶음 → 애니메이션 돌아가지 않고 그대로다.

데이터가 변경이 안되서 그런거겠지?ㅎㅎ..