Flutter中的上下文小部件

时间:2019-11-03 14:07:47

标签: flutter dart

我不明白Widget.of(context)的功能是什么,Flutter中的功能是什么。什么时候使用一个?到底是什么BuildContext?

....
)

return IconButton(
   icon: Icon(Icons.add),
   onPressed() {
      Scaffold.of(context).showSnackBar(snackBar)
   }
),```

2 个答案:

答案 0 :(得分:0)

Widget.of()获取窗口小部件树中最近的窗口小部件。它遍历树(通过Context)并查找Widget。在您的示例中的脚手架。或更详细地讲,从IconButton向上最近的支架。

答案 1 :(得分:0)

这里您要显示一个{ "Authorization": "", "body": { "id": "1", "tableName": "test" } }snackbar是知道如何绘制Scaffold的小部件,因此,首先需要获取小部件的支架,然后告诉它要显示snackbar,可以使用snackbar来完成。

.of()返回继承的小部件的状态。通过使用.of(),您试图在小部件树的更高级别上获取Scaffold小部件的状态。

This文章对.of()函数以及BuildContext到底是什么有很好的解释。