Flutter-SingleChildScrollView

SingleChildScrollView 类似与Android中的ScrollView,只能拥有一个子View。
使用场景

SingleChildScrollView不支持Sliver的延迟优化加载模型,所以只适用于不会超出屏幕太多的的时候使用。

构造函数
    Key key,
    this.scrollDirection = Axis.vertical,
    this.reverse = false,
    this.padding,
    bool primary,
    this.physics,
    this.controller,
    this.child,
    this.dragStartBehavior = DragStartBehavior.start,
    this.clipBehavior = Clip.hardEdge,
    this.restorationId,
  })
主要参数说明

scrollDirection:滑动方向,垂直:Axis.vertical;水平:Axis.horizontal。
reverse:按照阅读相反方向滑动,举个例子:水平滑动数据1…100,如果reverse:true,那么0在左边开始位置,滑动也是从左侧向右侧开始滑动。如果reverse:false,那么100展示在右边,滑动也是从右侧开始向左侧滑动。

Sample
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
import 'package:flutter_app/poitop/PoiApi.dart';

class HomePage extends StatefulWidget {
  @override
  State<StatefulWidget> createState() {
    return _HomePageStqate();
  }
}

class _HomePageStqate extends State<HomePage> {

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: Text("SingleChildScrollView"),
      ),
      body: Container(
        color: Colors.blue,
        width: double.infinity,
        height: double.infinity,
        child: CupertinoScrollbar(
          child:SingleChildScrollView(
            scrollDirection: Axis.vertical,
            reverse: false,
            physics: BouncingScrollPhysics(),
            child: Column(
              children: getListItems(),
            ),
          ),
        ),
      )
    );
  }

  List<Widget> getListItems(){
    List<Widget>list=new List();
    for(int i=0;i<100;i++){
      list.add(getTextView(i));
    }
    return list;
  }
  Widget getTextView(int index){
    return Text("DATA$index");
  }
}


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值