[当我使用列表视图时,使用不正确的ParentDataWidget错误

问题描述 投票:6回答:1

在我的应用程序的这一部分中,我有ListView,当我运行应用程序时出现此错误,我无法解决该问题:

Scaffold(
  body: Directionality(
textDirection: TextDirection.rtl,
child: Container(
  child: StreamBuilder(
    stream: globals.database.ticketsDao.getTicketsStream(),
    builder: (BuildContext context, AsyncSnapshot<List<Tickets>> snapshot) {
      if (snapshot.hasData) {
        return Column(
          children: <Widget>[
            Expanded(
              child: ListView.separated(
                  itemBuilder: (context, index) {
                    return ListTile(
                      title: Flexible(
                        child: Text(
                          snapshot.data[index].subject,
                          style: Theme.of(context).textTheme.caption.copyWith(fontFamily: 'IranSansBold'),
                        ),
                      ),
                      subtitle: Text(
                        snapshot.data[index].description,
                        style: Theme.of(context).textTheme.caption.copyWith(fontFamily: 'IranSansLight'),
                      ),
                    );
                  },
                  separatorBuilder: (context, index) {
                    return Divider();
                  },
                  itemCount:  snapshot.data.length),
            ),
          ],
        );
      } else {
        return Container(
            child: Center(
          child: Text(
            Strings.notAnyTickets,),
          ),
        ));
      }
    },
  ),
),
));

错误:

══╡小工具图书馆的异常提示╞═════════════════════════════════════════════════ ══════════在建立DefaultTextStyle(debugLabel:(((englishLike subhead 2014).merge(blackMountainView

subhead))。copyWith,继承:false,颜色:Color(0xdd000000),家族:Roboto,尺寸:16.0,重量:400,基线:字母,装饰:TextDecoration.none,softWrap:以框宽包装,溢出:剪辑):不正确地使用ParentDataWidget。

灵活的窗口小部件必须是直接放置在Flex小部件中。柔韧性(无深度,柔韧性:1,脏)具有Flex祖先,但它们之间还有其他小部件:-_ListTile

  • Padding(padding:EdgeInsets(16.0,0.0,16.0,0.0))
  • Semantics(container:false,properties:SemanticsProperties,selected:false,label:null,value:null,hint:null,hintOverrides:null)

  • Listener(侦听器:[向下],行为:不透明)

  • _ GestureSemantics
  • Listener(listeners :,行为:半透明)
  • RepaintBoundary
  • IndexedSemantics(索引:0)
  • KeepAlive(keepAlive:false)
  • SliverList(代表:SliverChildBuilderDelegate#6802e(估计子计数:19))]]

  • SliverPadding(padding:EdgeInsets(0.0,0.0,0.0,50.0))>] >>

  • 视口(axisDirection:向下,锚点:0.0,偏移量:ScrollPositionWithSingleContext#c95ba(offset:0.0,范围:null..null,视口:335.0,ScrollableState,AlwaysScrollableScrollPhysics-> ClampingScrollPhysics,IdleScrollActivity#05a39,ScrollDirection.idle))
  • IgnorePointer- [GlobalKey#a3d1a](忽略:false,忽略语义:false)

  • Semantics(container:false,属性:SemanticsProperties,标签:null,值:null,提示:null,hintOverrides:null)

  • 侦听器(侦听器:[向下],行为:不透明)
  • __ GestureSemantics

  • Listener(侦听器:[信号],行为:deferToChild)

  • _ ScrollSemantics- [GlobalKey#7cd1b]
  • RepaintBoundary
  • CustomPaint
  • RepaintBoundary
  • Expanded(flex:1)这些小部件不能介于Flex及其Flex之间。违规行为的母公司的所有权链灵活的是:DefaultTextStyle←AnimatedDefaultTextStyle←_ListTile←MediaQuery←填充←SafeArea←语义←侦听器←__GestureSemantics←RawGestureDetector←⋯
  • 在我的应用程序的此部分中,我具有ListView,当我运行应用程序时出现此错误,并且无法解决该问题:脚手架(正文:Directionality(textDirection:TextDirection.rtl,child:Container(child:...] >

Flexible Widgets必须是Expanded或Flex Widget的直接子代。

在您的情况下,您正在将Flexible用作ListTile小部件的一部分,它不是合适的父级。

Flexible小部件必须直接放在Flex小部件内部。

Flexible具有Flex祖先,但它们之间还有其他小部件:-_ListTile

flutter flutter-layout flutter-listview
1个回答
0
投票

Flexible Widgets必须是Expanded或Flex Widget的直接子代。

在您的情况下,您正在将Flexible用作ListTile小部件的一部分,它不是合适的父级。

© www.soinside.com 2019 - 2024. All rights reserved.