ALIOTHX Developers
ALIOTHXMANAGER
  • 😈DEMO App 설치
  • 크로스플랫폼 개발환경
    • ⚙️Flutter 개발환경
    • 🧑‍💻Flutter 시작하기
    • 📲폰에서 실행
    • 개발가이드
    • 🚀솔루션 설치
    • 🚦코드가이드
      • 명명 규칙및 주석처리
      • 코딩 컨벤션
      • 디렉토리 생성및 관리
      • 페이지 작성
    • 🏭Flutter 아키텍쳐
      • 채널링
      • 웹뷰
        • 웹뷰 설정
        • 웹뷰 연동
      • 보안 (Security)
        • 대칭키 암호알고리즘
        • 비대칭키 암호알고리즘
        • 메시지 다이제스트
        • 탈옥및 루팅 탐지및 차단
        • 앱 위/변조 탐지및 차단
        • 코드 난독화
    • 🖥️관리시스템
    • 🎆협업도구
  • UIUX 컴포넌트
    • UI/UX
      • 테마 적용
      • 화면방향전환
      • 토스트 (Toast)
      • 버튼 (Button)
      • 텍스트 (Text)
      • 탭바 (TabBar)
      • 이미지뷰 (ImageView)
      • 카메라/이미지
      • 페이지 트랜지션
      • 입력필드 (TextField)
      • 체크박스 (CheckBox)
      • 라디오버튼 (RadioButton)
      • 로딩바 (Loading Indicator)
      • 바텀시트 (BottomSheet)
      • 리스트뷰 (ListView)
      • 슬리버 (Sliver)
      • 사운드 (Sound)
      • 애니메이션 (Animation)
      • 위치 및 정렬
      • 커스텀 키보드
      • 카드 (Card)
      • 토글 버튼 (Toggle Button)
      • 다이얼로그 (Dialog)
      • QR코드
      • 페이지뷰 (PageView)
  • Common 컴포넌트
    • 공통모듈
      • 데이터통신과 JSON 파싱
      • 인증 연동
      • 채널링
      • 네비게이션
      • 푸시 메시지
      • SMS 인증
      • 예외처리
  • Security 컴포넌트
    • 보안모듈
      • 메시지 다이제스트
      • 암/복호화
  • Option 컴포넌트
    • 옵션모듈
      • 동영상 플레이어
      • 유튜브 연동
      • 차트
      • SNS 공유
      • 지도
      • 로컬 DB
  • 🎁라이센스및 기술지원
  • 🏢고객사
Powered by GitBook
On this page
  • SliverAppBarDelegate
  • Sliver Grid
  • SliverFixedExtentList
  • SliverGrid with SliverChildBuilderDelegate
  1. UIUX 컴포넌트
  2. UI/UX

슬리버 (Sliver)

슬리버(Sliver) 위젯은 Flutter에서 스크롤 가능한 컨텐츠를 구성하는 데 사용되며, 다양한 레이아웃을 생성할 수 있는 강력한 도구 중 하나입니다.

SliverAppBarDelegate

SliverAppBarDelegate는 슬리버의 앱바 부분 스타일을 지정하는 함수입니다. 앱바를 스크롤할 때 최소 및 최대 높이와 함께 사용자 정의 앱바를 만들 수 있습니다.

SliverAppBarDelegate(
  minHeight: 50.0,
  maxHeight: 100.0,
  child: Container(
    color: Colors.white,
    child: Center(
      child: Text(
        headerText,
        style: TextStyle(fontSize: 20, fontWeight: FontWeight.bold),
      ),
    ),
  ),
);

위와 같이 SliverAppBarDelegate를 사용하면 앱바의 스타일을 지정하고 고정(pinned) 여부를 설정할 수 있습니다.

Sliver Grid

SliverGrid는 그리드 형태의 슬리버 위젯을 구현하는 함수입니다. 여러 개의 그리드 아이템을 나란히 나열할 때 사용됩니다.

SliverGrid.count(
  crossAxisCount: 3,
  children: [
    // 그리드 아이템들
  ],
);

위와 같이 SliverGrid를 사용하면 그리드 레이아웃을 구성할 수 있으며, 각 아이템을 커스터마이즈할 수 있습니다.

SliverFixedExtentList

SliverFixedExtentList는 리스트 형태의 슬리버 위젯을 구현하는 함수입니다. 각 리스트 아이템의 높이가 동일하게 유지됩니다.

SliverFixedExtentList(
  itemExtent: 150.0,
  delegate: SliverChildListDelegate(
    [
      // 리스트 아이템들
    ],
  ),
);

SliverFixedExtentList를 사용하면 각 리스트 아이템의 높이를 일정하게 유지하면서 커스텀 리스트를 만들 수 있습니다.

SliverGrid with SliverChildBuilderDelegate

SliverGrid와 SliverChildBuilderDelegate를 결합하여 동적인 그리드 레이아웃을 생성할 수 있습니다. 아이템을 빌드하는 데 필요한 정보를 제공할 수 있습니다.

SliverGrid(
  gridDelegate: const SliverGridDelegateWithMaxCrossAxisExtent(
    maxCrossAxisExtent: 200.0,
    mainAxisSpacing: 10.0,
    crossAxisSpacing: 10.0,
    childAspectRatio: 4.0,
  ),
  delegate: SliverChildBuilderDelegate(
    (BuildContext context, int index) {
      return Container(
        alignment: Alignment.center,
        color: Colors.cyan[100 * (index % 9)],
        child: Text('item $index'),
      );
    },
    childCount: 102,
  ),
);

SliverGrid와 SliverChildBuilderDelegate를 사용하면 그리드 형태의 슬리버를 동적으로 생성할 수 있으며, 아이템 빌더 함수를 통해 아이템을 생성할 수 있습니다.

위에서 소개된 슬리버 위젯은 다양한 스크롤 가능한 레이아웃을 구성하는 데 사용됩니다. 필요에 따라 슬리버 위젯을 활용하여 다양한 스크롤 레이아웃을 구성해보세요.

Previous리스트뷰 (ListView)Next사운드 (Sound)

Last updated 1 year ago

Page cover image