パッケージ、リポジトリ、アプリカテゴリを検索

パッケージ詳細v4.0.4

bottom_sheet

リストがなくてもコンテンツをスクロールできる柔軟なボトムシート。

AndroidiOSWebmacOSWindowsLinux
30日間ダウンロード
3万
いいね数
410
Pub ポイント
140

パッケージをインストール

flutter pub add bottom_sheet

パッケージ概要

公開情報に基づく選定ガイドです。参考としてご利用ください。

Flutter用の柔軟なボトムシートウィジェットで、リストにラップされていなくてもスクロールコンテンツをサポートします。スムーズでカスタマイズ可能な遷移を提供し、Android、iOS、Web、macOS、Windows、Linuxなど複数のプラットフォームで使用できるように設計されています。このパッケージは、画面下部からインタラクティブなコンテンツを提示し、応答性のある挙動を実現することで、ユーザー体験を向上させます。モーダルやフィルター、フルスクリーンナビゲーションなしでスペースが必要な詳細ビューに最適です。

用途

  • モーダルダイアログ
  • フィルターパネル
  • 詳細なコンテンツ表示
  • インタラクティブフォーム
  • クイックアクションメニュー

主な機能

  • ListView なしのスクロール可能コンテンツ
  • クロスプラットフォーム対応
  • カスタマイズ可能なアニメーション
  • 柔軟な高さ制御
  • レスポンシブデザイン
  • 簡単な統合

適している対象

  • マルチプラットフォームアプリを開発する開発者
  • UI重視のアプリケーション
  • 拡張可能なコンテンツ領域を必要とするアプリ
  • 一貫したボトムシートを必要とするデザインシステム
  • Surf Studio の Flutter コンポーネントを使用するチーム

注意事項

  • ネストされたスクロール可能なコンポーネントの取り扱いに注意が必要です
  • 複雑なレイアウトには追加のスタイリングが必要になる場合があります
  • 大量のコンテンツによるパフォーマンスへの影響
  • 基本的な使用法以外のドキュメントは限られている
  • 非常に大きなデータセットには最適化されていません

元の README

関連するソースリポジトリの README 原文のスナップショットです。最新の内容はリポジトリをご覧ください。

Bottom Sheet

Made by Surf 🏄‍♂️🏄‍♂️🏄‍♂️

Build Status Coverage Status Pub Version Pub Likes Pub popularity Flutter Platform

About

Custom bottom sheet widget that can be resized in response to drag gestures and then scrolled.

Overview

Main classes:

  1. FlexibleBottomSheet
  2. BottomSheetRoute and showing methods

Flexible and scrollable bottom sheet.

All you have to do is call showFlexibleBottomSheet() and you'll get a popup that looks like a modal bottom sheet and can be resized by dragging it up and down and scrolled when expanded.

There are 2 types of BottomSheets:

  1. BottomSheet
  2. StickyBottomSheet

Example

Simple BottomSheet

Demo

Demo

To show bottomSheet, use :

showFlexibleBottomSheet(
  minHeight: 0,
  initHeight: 0.5,
  maxHeight: 1,
  context: context,
  builder: _buildBottomSheet,
  anchors: [0, 0.5, 1],
  isSafeArea: true,
);

Widget _buildBottomSheet(
    BuildContext context,
    ScrollController scrollController,
    double bottomSheetOffset,
  ) {
    return Material(
        child: Container(
          child: ListView(
            controller: scrollController,
            ...
          ),
        ),
      );
  }
BottomSheet with height based on content

Demo

showFlexibleBottomSheet(
  minHeight: 0,
  initHeight: 0.8,
  maxHeight: 0.8,
  context: context,
  builder: _buildBottomSheet,
  isExpand: false,
);

Widget _buildBottomSheet(
    BuildContext context,
    ScrollController scrollController,
    double bottomSheetOffset,
  ) {
    return Material(
        child: Container(
          child: ListView(
              controller: scrollController,
              shrinkWrap: true,
              ...
          ),
        ),
      );
  }
Sticky BottomSheet

Demo

To show sticky BottomSheet, use:
You have to return SliverChildListDelegate from builder !!!

showStickyFlexibleBottomSheet(
  minHeight: 0,
  initHeight: 0.5,
  maxHeight: 1,
  headerHeight: 200,
  context: context,
  backgroundColor: Colors.white,
  headerBuilder: (BuildContext context, double offset) {
    return Container(
      ...
    );
  },
  builder: (BuildContext context, double offset) {
    return SliverChildListDelegate(
      <Widget>[...],
    );
  },
  anchors: [0, 0.5, 1],
);

Installation

Add bottom_sheet to your pubspec.yaml file:

dependencies:
  bottom_sheet: $currentVersion$

At this moment, the current version of bottom_sheet is bottom_sheet version.

Changelog

All notable changes to this project will be documented in this file.

Issues

To report your issues, submit them directly in the Issues section.

Contribute

If you would like to contribute to the package (e.g. by improving the documentation, fixing a bug or adding a cool new feature), please read our contribution guide first and send us your pull request.

Your PRs are always welcome.

How to reach us

Please feel free to ask any questions about this package. Join our community chat on Telegram. We speak English and Russian.

Telegram

License

Apache License, Version 2.0

カテゴリー

依存関係

依存関係一覧 1 件

  • bottom_inset_observer^3.1.0

ソースリポジトリ

このパッケージを使用しているプロジェクト