[IDLE-000] 유저는 완료된 동작에 대한 정보를 스낵바로 제공받을 수 있다. #60
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
변경된 점
시현영상
재사용가능한 스낵바 구현
모든 뷰컨트롤러에서 스낵바를 호출하기 위해 BaseViewController에 스낵바를 표출하는 함수를 구현했습니다.
![스크린샷 2024-09-12 오후 2 12 59](https://private-user-images.githubusercontent.com/106458638/366728964-4aac7422-09f8-47cb-a5e2-e0dbc27e447c.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3Mzk1MDY2OTEsIm5iZiI6MTczOTUwNjM5MSwicGF0aCI6Ii8xMDY0NTg2MzgvMzY2NzI4OTY0LTRhYWM3NDIyLTA5ZjgtNDdjYi1hNWUyLWUwZGJjMjdlNDQ3Yy5wbmc_WC1BbXotQWxnb3JpdGhtPUFXUzQtSE1BQy1TSEEyNTYmWC1BbXotQ3JlZGVudGlhbD1BS0lBVkNPRFlMU0E1M1BRSzRaQSUyRjIwMjUwMjE0JTJGdXMtZWFzdC0xJTJGczMlMkZhd3M0X3JlcXVlc3QmWC1BbXotRGF0ZT0yMDI1MDIxNFQwNDEzMTFaJlgtQW16LUV4cGlyZXM9MzAwJlgtQW16LVNpZ25hdHVyZT0xMTc4YmJkZjg5OTk5OTExZGFkNWMxNjUxNWNhNTExMTc4ODNiMjI2NjQyZDZiNDgwMWNhMTM2ZWNhYzgzNGE4JlgtQW16LVNpZ25lZEhlYWRlcnM9aG9zdCJ9.xsly7_qXnCbwUvsyCqyB97u9qO5JMHGqvkJuLUTuhug)
스낵바는 IdleSnackBarRO객체를 사용하여 색상, 택스트, 텍스트옆 이미지를 설정할 수 있습니다.
스낵바는 BaseViewModel의 subject에 이벤트를 전달함으로써 ViewController에 표출됩니다.
네비게이션 이동후 스낵바 표출하기
네비게이션을 이동한 이후에 스낵바를 띄워야 하는 요구사항이 있었습니다.
BaseViewModel에 스낵바 정보를 보관하는 배열을 정의하고 viewDidAppear가 호출되는 시점에 축적된 스낵바를 특정 주기로 표출하는 방법을 사용해 문제를 해결하였습니다.
동시에 여러가지 스낵바가 등장하는 것을 방지하기 위해 특정 스낵바 이벤트가 방출된 이후 기간을 두어 다음 이벤트가 방출되도록 했습니다.