如何解决Flutter:DraggableScrollbar下不支持该列
这是TabBarView()的页面。我想在 ListView.builder()的顶部添加一些文本或container()。使用 ListView.builder()可以滚动。但是不支持将column()作为DraggableScrollbar()的子级。为什么这里不支持它?
在启动 ListView.builder()小部件之前,如何添加Text()或任何容器()?
import 'package:boimarket/booksdescription.dart';
import 'package:boimarket/model/model.dart';
import 'package:Flutter/foundation.dart';
import 'package:Flutter/material.dart';
import 'package:draggable_scrollbar/draggable_scrollbar.dart';
class StoryBooksCategory extends StatelessWidget {
final ScrollController controller;
const StoryBooksCategory({Key key,@required this.controller})
: super(key: key);
@override
Widget build(BuildContext context) {
var _height = MediaQuery.of(context).size.height;
var _width = MediaQuery.of(context).size.width;
final Color _whiteCream = Color.fromrGBO(250,245,228,1);
final Color _darkBlue = Color.fromrGBO(0,68,69,1);
return Align(
alignment: Alignment.topCenter,child: Container(
width: _width / 1.1,child: FutureBuilder(
future: fetchBooks(),builder: (context,AsyncSnapshot<List<Book>> snapshot) {
if (!snapshot.hasData) {
return Column(
mainAxisAlignment: MainAxisAlignment.center,crossAxisAlignment: CrossAxisAlignment.center,children: <Widget>[
LinearProgressIndicator(
backgroundColor: _whiteCream,),Text("Loading"),],);
} else(snapshot.hasData) {
var storyBooks =
snapshot.data.where((b) => b.category == 1).toList();
storyBooks.sort((a,b) => a.name.compareto(b.name));
print(storyBooks.length);
return DraggableScrollbar.rrect(
controller: controller,backgroundColor: _darkBlue,child: Column(
children: [
Text("I want to add some text here"),ListView.builder(
controller: controller,scrollDirection: Axis.vertical,itemCount: storyBooks.length,itemBuilder: (context,index) {
return GestureDetector(
onTap: () {
Route route = MaterialPageRoute(
builder: (context) => BookDescription(
storyBooksValue: storyBooks[index]),);
Navigator.push(context,route);
},child: Padding(
padding: const EdgeInsets.only(
left: 10.0,right: 10.0,top: 20.0),child: Container(
width: _width / 1.1,height: _height / 4,decoration: Boxdecoration(
color: _whiteCream,borderRadius: BorderRadius.all(
Radius.circular(5.0),BoxShadow: [
BoxShadow(
color: Colors.black26,blurRadius: 2,spreadRadius: 2,offset: Offset(2.0,2.0),)
],},}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。