在flutter中使用sliverlist内部的列表视图

lskq00tm  于 2023-03-13  发布在  Flutter
关注(0)|答案(1)|浏览(113)

我目前正在使用vertical_scrollable_tabview小工具
它使用一个sliverList来构建列表。
我需要使用的列表包含一个对象列表,所以我需要一种方法来在这个sliverlist中实现一个列表视图。
这个对象列表是动态的,所以我不能用一个固定的高度来定义它。有没有方法来控制列表(它应该是不可滚动的,sliverlist应该滚动)?
我实际上用的是这个,但是很糟糕

return Container(
    height: (tabEmersy!.text.length < 50)? 50 : 30* (tabEmersy!.text.length/50);
    width: MediaQuery.of(context).size.width-40,
    color: Colors.blueAccent,
  child: ListView.builder(
    physics: NeverScrollableScrollPhysics(),
    shrinkWrap: true,
      itemCount: tabEmersy.content.length,
      itemBuilder: (BuildContext context, int index) {
        return _testBuildContentDetail(
            context: context,
            content: tabEmersy.content[index]);
      }
  ),
);

Widget _testBuildContentDetail({
required BuildContext context,
required Contentemersy content,
}) {
return Column(
  crossAxisAlignment: CrossAxisAlignment.start,
  children: [
    content.title!=null?
    Text(content.title!, style: _textTheme(context).titleMedium):SizedBox(height: 0,),
    const SizedBox(height: 2),
    Html(...),
  ],
);
}
juzqafwq

juzqafwq1#

至于你的建议,你可以用列

return Container(
    // height: (tabEmersy!.text.length < 50)? 50 : 30* (tabEmersy!.text.length/50);
    width: MediaQuery.of(context).size.width-40,
    color: Colors.blueAccent,
    child: Column(
     children: List.generate(tabEmersy.content.length, (index)   {
        return _testBuildContentDetail(

相关问题