패키지, 저장소 및 앱 카테고리 검색

dismissible_carousel_viewpager 표지
패키지 상세v0.0.7

dismissible_carousel_viewpager

이것은 캐러셀 효과와 페이지가 제거될 때 사라지는 애니메이션을 제공하는 뷰 페이저입니다.

AndroidiOSWebmacOSWindowsLinux
30일 다운로드
85
좋아요
31
Pub 점수
160

패키지 설치

flutter pub add dismissible_carousel_viewpager

패키지 개요

공개 정보를 바탕으로 생성한 선택 가이드입니다.

페이지를 제거할 때 부드러운 사라짐 애니메이션을 제공하는 카루셀 스타일의 ViewPager를 구현하는 플러터 패키지입니다. 시각적으로 매력적인 스와이프 가능한 인터페이스와 파라락스 효과를 통해 사용자 상호작용을 향상시킵니다. 동적 콘텐츠 표시 및 직관적인 제스처 기반 탐색 및 항목 삭제가 필요한 앱에 적합합니다. Android, iOS, Web, macOS, Windows, Linux 등 여러 플랫폼을 지원하여 광범위한 호환성을 보장합니다. 가볍고 기존 플러터 프로젝트에 쉽게 통합할 수 있도록 설계되었습니다.

사용 사례

  • 인터랙티브 콘텐츠 슬라이더
  • 스와이프로 닫기 갤러리
  • 다이나믹 카드 기반 인터페이스
  • 전자상거래 제품 캐러셀
  • 사용자 온보딩 흐름
  • 미디어 브라우징 경험

주요 기능

  • 파라럭스가 있는 카루셀 효과
  • 부드러운 취소 애니메이션
  • 제스처 기반 페이지 삭제
  • 크로스 플랫폼 지원
  • Flutter와의 간편한 통합
  • 사용자 정의 전환 효과

적합한 대상

  • 인터랙티브 UI를 구축하는 개발자
  • 스와이프 가능한 콘텐츠를 가진 앱
  • 시각적 매력이 필요한 디자이너
  • 모바일 우선 애플리케이션
  • 웹 및 데스크톱 플러터 앱
  • 직관적인 제스처가 필요한 프로젝트

고려 사항

  • 대규모 데이터 세트에 대한 성능 튜닝이 필요할 수 있습니다
  • 복잡한 애니메이션에 대한 사용자 정의 제한
  • 매우 높은 빈도의 업데이트에 최적화되지 않음
  • 중간 크기의 콘텐츠 목록에 가장 적합
  • 취소 시 상태를 주의 깊게 다뤄야 합니다
  • 하위 ViewPager 구현의 안정성에 따라 달라짐

원본 README

연결된 소스 저장소의 README 원문 스냅샷입니다. 최신 내용은 저장소에서 확인하세요.

This is a view pager provides carousel effect and dismissal animation when page was removed.

Features

  • Dismissal animation
Fade out & slide out Fade out & scale Fade out & circular hide
dismissal_fade_slide_out dismissal_fade_scale dismissal_fade_circular_hide
  • Carousel effect
Horizontal Vertical
base_usage_horizontal base_usage_vertical

Web Live demo

This an example app of this plugin of web version.

https://zyzdev.github.io/dismissible_carousel_viewpager

Usage

More detail of usage see /example app.

Base usage:

More detail, please run demo Base Usage at /example app.

DismissibleCarouselViewPager(
  viewportFraction: 0.5,
  besidePageScale: 0.8,
  itemBuilder: (context, index) {
    return Container(
      alignment: Alignment.center,
      color: index.isEven
      ? Colors.blueAccent.withOpacity(0.1)
      : Colors.deepPurpleAccent.withOpacity(0.1),
      child: Text("Item:$index"),
    ); 
  },
  itemCount: 100,
);
Dismissal animation

More detail please run demo Dismissal Usage at /example app.

dismissible_carousel_viewpager provides several kinds of animation(fade out, slide out, scale and circular hide) to make dismissal animation.

You can combine them to make your own style of dismissal animation.

Note

The dismissal animation base on AnimatedSwitcher.

Remember add key to the page widget that created by DismissibleCarouselViewPager.itemBuilder.

I recommend using the data that preparing to create page widget to create Key("$data"), ValueKey(data) or ObjectKey(data) for the page widget.

####example:


late final List<int> _item = List.generate(1000, (index) => index);

DismissibleCarouselViewPager(
  itemCount: _item.length,
  itemBuilder: (context, index) {
    Object data = _item[index];
    return Container(
      // must add key
      key: Key("$data"),
      //key: ValueKey(data),
      //key: ObjectKey(data),
      alignment: Alignment.center,
      color: Colors.grey.withOpacity(0.1),
      child: Column(
        mainAxisSize: MainAxisSize.min,
        children: [
        Expanded(
          child: Container(
            alignment: Alignment.bottomCenter,
            child: Text("Item:$data"),
          ),
        ),
        Expanded(
          child: IconButton(
            icon: const Icon(Icons.delete),
            onPressed: () {
                setState(() {
                  _item.remove(data);
                });
              },
            ),
          ),
        ],
      ),
    );
  },
  dismissalConfig: DismissalConfig(
    dismissalTypes: [
      DismissalType.fadeOut(),
      DismissalType.slideOut(),
    ],
  ),
);

카테고리

소스 저장소

이 패키지를 사용하는 프로젝트

아직 데이터가 없습니다.