flutter 在父级上指定PageStorageKey时SelectableText的意外行为

webghufk  于 2023-06-30  发布在  Flutter
关注(0)|答案(1)|浏览(96)

我的目标是保持列表的滚动位置。我将PageStorageKey添加到列表中。但是,这会导致列表中SelectableText出现奇怪的行为。感觉SelectableText也想保存/接收它的位置。因此,文本会四处跳跃(сalls animateTo()as Scrollable)。
有没有办法告诉SelectableText是一个静态文本,而不是滚动?
下面是重现问题的代码。您必须向下滚动,然后快速向上滚动,才能看到SelectableText开始跳跃(动画)。

class Home extends StatelessWidget {
  const Home({super.key});

  @override
  Widget build(BuildContext context) => Scaffold(
        body: ListView(
          key: const PageStorageKey("key"),
          children: [
            ...List.generate(10, (index) => const SelectableText("Selectable", style: TextStyle(fontSize: 20))),
            ...List.generate(200, (index) => Text("Text")),
          ],
        ),
      );
}

示例:(https://i.postimg.cc/PfQMwrFg/ezgif-com-video-to-gif.gif

q9rjltbz

q9rjltbz1#

对于那些寻找答案的人。显然这是一个bug。已创建问题链接:https://github.com/flutter/flutter/issues/125298

相关问题