Dart 带省道的颤振中的可滚动列表视图

Dart 带省道的颤振中的可滚动列表视图,dart,flutter,mobile-development,Dart,Flutter,Mobile Development,有人能告诉我应该在哪里定义滚动控制器吗?我有聊天列表视图,它是可滚动视图的主体。我希望能够从MainView控制滚动行为,但不知道如何将控制器传递到\u ChatListView。有什么想法吗 mainview.dart class MainView extends StatelessWidget { ... // is this the correct place? final ScrollController scrollController = ScrollCont

有人能告诉我应该在哪里定义滚动控制器吗?我有聊天列表视图,它是可滚动视图的主体。我希望能够从
MainView
控制滚动行为,但不知道如何将控制器传递到
\u ChatListView
。有什么想法吗

mainview.dart

class MainView extends StatelessWidget {
    ...
    // is this the correct place?
    final ScrollController scrollController = ScrollController();

    @override
    Widget build(BuildContext context) {
        return new Scaffold(
            body: new ChatListView()
        );
    }
}
class ChatListView extends StatefulWidget {
    @override
    _ChatListView createState() => _ChatListView();
}

class _ChatListView extends State< ChatListView > {
    Widget build(BuildContext context) {
        return ListView.builder(
          controller: scrollController,
          );
    }
}
chatlistview.dart

class MainView extends StatelessWidget {
    ...
    // is this the correct place?
    final ScrollController scrollController = ScrollController();

    @override
    Widget build(BuildContext context) {
        return new Scaffold(
            body: new ChatListView()
        );
    }
}
class ChatListView extends StatefulWidget {
    @override
    _ChatListView createState() => _ChatListView();
}

class _ChatListView extends State< ChatListView > {
    Widget build(BuildContext context) {
        return ListView.builder(
          controller: scrollController,
          );
    }
}
类ChatListView扩展StatefulWidget{
@凌驾
_ChatListView createState()=>\u ChatListView();
}
类\u ChatListView扩展状态{
小部件构建(构建上下文){
返回ListView.builder(
控制器:滚动控制器,
);
}
}

添加构造函数并将控制器作为参数传递

class MainView extends StatelessWidget {
    ...
    // is this the correct place?
    final ScrollController scrollController = ScrollController();

    @override
    Widget build(BuildContext context) {
        return new Scaffold(
            body: new ChatListView(scrollController: scrollController)
        );
    }
}
class\u ChatListView扩展状态{
小部件构建(构建上下文){
返回ListView.builder(
控制器:widget.scrollController,
);
}
}

太完美了,
小部件
对象终于是我想要的了!谢谢