Flutter 建立apk后的灰色屏幕

Flutter 建立apk后的灰色屏幕,flutter,Flutter,我更新了颤振频道,在清单中发布了互联网许可(我看到了有帮助的答案) 我认为问题与扩展有关,但我不确定,在构建停止后,调试和发布工作是否正常 @override Widget build(BuildContext context) { return Scaffold( appBar: AppBar( backgroundColor: Colors.deepPurple, title: Text('Справочник'),

我更新了颤振频道,在清单中发布了互联网许可(我看到了有帮助的答案)

我认为问题与扩展有关,但我不确定,在构建停止后,调试和发布工作是否正常


  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        backgroundColor: Colors.deepPurple,
        title: Text('Справочник'),
      ),
      body: ListView.separated(
        itemCount: data.length,
        itemBuilder: (context, index) {
          return Container(
              height: 50,
              alignment: Alignment.center,
              child: Expanded(
                    child: GestureDetector(
                      child: Text('${data[index].name}', textAlign: TextAlign.center,),
                      onTap: () {
                        Navigator.push(context, MaterialPageRoute(builder: (context) => FoodByGroup(dataFood: data[index].foods,)));
                      },
                    ),
                  ),
          );
        },
        separatorBuilder: (BuildContext context, int index) => const Divider(),
      ),
    );
  }
} ```

从容器中移除扩展,问题是您不能在子对象中使用扩展,这意味着扩展的小部件必须是子对象或父对象

示例:

 Expanded(
      child: MyWidget(),
    ),

Row(
  children: [
    Expanded(
      child: MyWidget(),
    ),
    Expanded(
      child:Text("Text Widget"),
    ),
  ],
)
列中

Column(
  children: [
    Expanded(
      child: MyWidget(),
    ),
    Expanded(
      child:Text("Text Widget"),
    ),
  ],
),
不是这样的

Container(
  child: Expanded(
    child: MyWidget(),
  ),
)

请注意终端告诉您的信息。不要忽略关于小部件构建顺序的警告,它大部分时间将在调试模式下工作,但在发布时会显示灰色屏幕

这里的问题是,您只能将expanded用作flex小部件的直接子级。扩展需要flex祖先,所以基本上需要这些:行、列或flex