240807 TIL

나고수·2024년 8월 7일
0

2024 TIL

목록 보기
50/94
post-thumbnail

① 배운 것
1. 스크롤뷰에서 여러 scrollPhysics를 섞어서 사용하는 방법

 const BouncingScrollPhysics(
 parent: AlwaysScrollableScrollPhysics());

2.인스타그램 돋보기를 눌렀을때 나오는 리스트뷰처럼 스크롤을 하면 다음/이전 아이템으로 포커스 되는 리스트뷰 구현

기본 원리는 'ScrollablePositionedList'를 사용하고 해당 리스트뷰를 NotificationListener으로 감싸고 scrollNotification.direction == ScrollDirection.reverse와 scrollNotification.direction == ScrollDirection.forward일때를 체크해서 reverse일때는 ScrollablePositionedList의 itemScrollController를 다음 인덱스 아이템으로 넘겨주고 forward일때는 이전 인덱스 아이템으로 넘겨주면된다.
전체 코드는 노션에 프라이빗으로 저장해놓음

  1. NotificationListener의 onNotification에 리턴하는 true,false의 의미 : true를 리턴하면 더 상위 위젯의 NotificationListener의 onNotification 로직을 타지 않고 이번 NotificationListener의 onNotification에서 멈춘다. false를 리턴하면 더 상위 위젯의 NotificationListener의 onNotification의 로직을 타게된다.

② 회고 (restropective)
뭔가 안될때는 그냥 안된다고 하기보다는
이정도로 구현해봤는데 뭐때문에 안되고 대안은 이런게 있다
이런식으로 말하는게 좋음

③ 개선을 위한 방법

profile
되고싶다

0개의 댓글