0107 flutter

사랑이란 멜론·2024년 1월 7일

flutter 공부

목록 보기
10/14
post-thumbnail

ListView builder

showDialog

하려하는데 또 pub get has not been run 발생

터미널을 열어서
작업중인 프로젝트 루트 폴더에서
flutter pub get을 사용하여 처리 완료!

다시 시작

사진을 10개 구해야함
아무거나 때려박음

ListViewPage는 statefil widget으로 선언함

아래 자동 생성되는 _이름 위젯은 State를 상속받는다.

이 안에 데이터를 준비해주고

ListView.builder(
itemcount: int,
itemBuilder:(context, index)
)

위처럼 준비하는데

제스쳐가 필요하다고 한다

Gesture Detector를 해볼것이다.
제스처 기능을 지원하지 않는 위젯을 gesture detector로 감싸주면
onTap 메소드로 제스쳐 기능을 사용할 수 있게 해주는 위젯이다.

아이템빌더에서 카드 위젯을 리턴해준다.

container위젯은 width height를 지정할 수 있음에도 다른 여러 기능을 지원함
하지만 sizedbox는 다른 기능없이 width height만 지정하는 단순 박스라서
자원절약에 도움이 됨

const 생성자를 가지고 있기 때문

반응형 앱은 화면이 가로세로모드로 전환될 때마다 위젯이 리빌드 됨

mediaQuery 라는 클래스를 사용하면 현재 디바이스의 사이즈를 알아낼 수 있다
MediaQuery.of(context).size.width*0.6

showDialog 메소드는 context와 builder args를 가지고 있음

clipRect라는 것이 있는데 circleAvatar 위젯과 비슷하다

elevatedbutton.icon을 사용했는데
9픽셀이 오버된 것 같다


이 속성이 true일 때 body와 scaffold의 위젯들이 키보드를 피해 크기를 변경한다.
그 때 화면의 크기보다 위젯들의 크기가 커지나보다.

scaffold 아래에 resizeToAcoidBottomInset을 false로 사용해보았는데
아직 오버플로우된다

그래서 그거 말고

팝업창 column을 singleChildScrollView로 감싸줘서 스크롤이 가능하게 만들었더니 됐다.

크기가 고정된 요소들에 대해서는 스크롤이 가능하게 하면서
지정되지 않는 flexible한 요소들을 무한히 늘려줘 화면을 채운다고 쓰여있는 거 같은데
읽기 귀찮아서 대충 했는데 맞는 것 같다.

listview는 안의 모든 child를 생성해서 보여줌
listview.builder는 그때그때 필요한 만큼만 데이터를 저장소나 서버에서 불러옴
recycler같은건가본데..?

이거도 끝

profile
은 여기 있어요

0개의 댓글