FLUTTER ECOSYSTEM

blaugold/circular_clip_route

円形のクリッピングを拡張してページを表示するページルートを提供するFlutterパッケージです。

circular_clip_route のプロジェクト画像
Stars
31
Forks
3
最終プッシュ(UTC)
2022/06/12
プロジェクト状態
公開中
Gabriel Terwesten GitHub avatar
GITHUB User

Gabriel Terwesten ↗

@lotumMunich
言語DartSwiftHTMLKotlinObjective-C

技術トピック

このリポジトリが公開するパッケージ

使用している依存関係

依存関係一覧 3 件
  • flutter{"sdk":"flutter"}
  • flutter_test開発用{"sdk":"flutter"}
  • pedantic開発用^1.11.0

元の README

以下は英語原文のスナップショットです。最新版は GitHub をご覧ください。

README を開く / 閉じる

pub.dev package page GitHub Stars

A page route, which reveals its page by expanding a circular clip from an anchor widget.

https://raw.githubusercontent.com/blaugold/circular_clip_route/master/doc/example-screen-recording.gif

If you're looking for a database solution, check out cbl, another project of mine. It brings Couchbase Lite to standalone Dart and Flutter, with support for:

  • Full-Text Search,
  • Expressive Queries,
  • Data Sync,
  • Change Notifications

and more.


Getting started

To use the CircularClipRoute, provide it the context from which the animation should expand and push it onto the navigation stack. One way to get the right context is to use a Builder, which wraps the widget from which the route should expand:

final navigationTrigger = Builder(
    builder: (context) {
      return IconButton(
          icon: Icon(Icons.favorite),
          onPressed: () {
            Navigator.push(context, CircularClipRoute<void>(
              // This context will be used to determine the location and size of
              // the expanding clip. Here this will resolve to the `IconButton`.
              expandFrom: context,
              builder: (_) => MyRoute(),
            ));
          }
      );
    }
);

Also, take a look at the API docs for customizing the animation.

Example

The example implements the demo at the top.

References

Inspired by this shot.

This drawing visualizes the geometry involved in creating the route transition:

Illustration of the geometry of the transition

The Anchored Custom Routes article explains how to implement routes, that are anchored to a widget, generally.


Gabriel Terwesten • GitHub @blaugold • Twitter @GTerwesten • Medium @gabriel.terwesten