颤振中的过度滚动指示器颜色不同?

问题描述

name="identity"的顶部和底部color指示符可以使用不同的Overscroll吗?

我有一个ListView颜色渐变的背景,并希望它的顶部ListView指示器与渐变的顶部相匹配,而底部指示器则与渐变的底部相匹配。

解决方法

您可以用ListView包装GlowingOverscrollIndicator并设置其color参数。要更改顶部和底部的颜色,可以将监听器添加到ListView的滚动控制器中。

 var _color = Colors.blue;

  _listener() {
    if (_scrollController.offset >=
            _scrollController.position.maxScrollExtent &&
        !_scrollController.position.outOfRange) {
      // bottom
      setState(() {
        _color = Colors.red;
      });
    }
    if (_scrollController.offset <=
            _scrollController.position.minScrollExtent &&
        !_scrollController.position.outOfRange) {
      // top
      setState(() {
        _color = Colors.blue;
      });
    }
  }

  @override
  void initState() {
    super.initState();
    _scrollController.addListener(_listener);
  }

  @override
  Widget build(BuildContext context) {
    return Scaffold(
        body: GlowingOverscrollIndicator(
        axisDirection: AxisDirection.down,color: _color,child: ListView.builder(
          controller: _scrollController,physics: ClampingScrollPhysics(),itemCount: 30,itemBuilder: (context,index) {
            return ListTile(
              title: Text('$index'),);
          },),));
  }

结果:

res

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...