webview_refresher 0.1.0+1 copy "webview_refresher: ^0.1.0+1" to clipboard
webview_refresher: ^0.1.0+1 copied to clipboard

bring pull to refresh feature to official webview plugin

Webview Refresher #

bring pull to refresh feature to official webview plugin

Install #

flutter pub add webview_refresher

Usage #

  final controller = WebViewController();
  Completer<void>? _completer;

  Future onRefresh() {
    _completer = Completer<void>();
    return _completer!.future;
  }

  finishRefresh() {
    if (_completer?.isCompleted ?? false) {
      _completer?.complete();
    }
  }

  @override
  void initState() {
    super.initState();
    controller.setNavigationDelegate(NavigationDelegate(
      onPageFinished: (url) {
        finishRefresh();
      },
      onWebResourceError: (error) {
        finishRefresh();
      },
    ));
  }

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: const Text('demo'),
        actions: [
          IconButton(
            onPressed: () {
              controller.loadRequest(Uri.parse('https://www.zhihu.com/'));
            },
            icon: const Icon(Icons.play_arrow_rounded),
          ),
        ],
      ),
      body: WebviewRefresher(
        controller: controller,
        onRefresh: onRefresh,
      ),
    );
  }
4
likes
160
points
22
downloads

Publisher

unverified uploader

Weekly Downloads

bring pull to refresh feature to official webview plugin

Repository (GitHub)

Documentation

API reference

License

MIT (license)

Dependencies

flutter, webview_flutter

More

Packages that depend on webview_refresher