小编aym*_*969的帖子

Flutter 如何滚动到 SliverList 中的特定项目位置?

我有一个SliverListwith SliverChildBuilderDelegate,我的问题是我无法设置ScrollControllerSliverList因为我想控制我的列表的滚动,我正在寻找滚动到列表中的特定项目(非常大),通常ListView这项工作很容易,我我想知道为什么没有像这样的controller财产?SliverListListView

注意我知道CustomScrollViewcontroller属性并且我已经测试过,但这将控制整个视口,而不仅仅是列表

 @override
  Widget build(BuildContext context) {
    MainState m = Provider.of<MainState>(context, listen: false);
    return DefaultTabController(
      length: m.itemCategoryList.length,
      child: Scaffold(
          // appBar: _createAppBar(),
          body: Builder(builder: (context) => _createBody(context))),
    );
  }

  AppBar _createAppBar() {
    MainState m = Provider.of<MainState>(context);

    return AppBar(
      title: Text(
        m.selectedPartner.fullname,
        style: Theme.of(context).textTheme.display3,
      ),
      leading: IconButton(
        icon: Icon(Icons.arrow_back),
        onPressed: () {
          Navigator.pop(context);
        },
      ),
    );
  }

  _createBody(BuildContext context) {
    MainState …
Run Code Online (Sandbox Code Playgroud)

flutter flutter-sliver flutter-widget

15
推荐指数
1
解决办法
4837
查看次数

Flutter Windows:如果将 TextField 放置在 AlertDialog 内,则它不允许有空间

一小时前,当我将 TextField 放入 AlertDialog 中时,我发现了一个奇怪的行为,它不允许输入空格,否则它的行为正常,这是我的代码:

\n

//================Flutter doctor -v\n[\xe2\x88\x9a] Flutter(频道稳定,2.0.2,在 Microsoft Windows 上 [版本 10.0.18363.1316] ,语言环境 en-US)\n\xe2\x80\xa2 Flutter 版本 2.0.2,位于 C:\\Flutter\\flutter-latest\n\xe2\x80\xa2 框架修订版 8962f6dc68(5 天前),2021-03 -11 13:22:20 -0800\n\xe2\x80\xa2 引擎修订版 5d8bf811b3\n\xe2\x80\xa2 Dart 版本 2.12.1

\n

[\xe2\x88\x9a] Android 工具链 - 为 Android 设备开发(Android SDK 版本 29.0.3)\n\xe2\x80\xa2 Android SDK,位于 C:\\Users\\user\\AppData\\Local\\ Android\\sdk\n\xe2\x80\xa2 平台 android-30,构建工具 29.0.3\n\xe2\x80\xa2 Java 二进制文件位于:C:\\Program Files\\Android\\Android Studio\\ jre\\bin\\java\n\xe2\x80\xa2 Java 版本 OpenJDK 运行时环境(内部版本 1.8.0_202-release-1483-b03)\n\xe2\x80\xa2 接受所有 Android 许可证。

\n

[\xe2\x88\x9a] Chrome - 为网络开发\n\xe2\x80\xa2 Chrome,位于 C:\\Users\\user\\AppData\\Local\\Google\\Chrome\\Application\\chrome 。EXE文件

\n

[\xe2\x88\x9a] Visual Studio - 针对 Windows 进行开发(Visual Studio …

widget dart flutter flutter-alertdialog flutter-windows

2
推荐指数
1
解决办法
1749
查看次数