Ответ
Встроенные (embedded) виджеты — это виджеты, которые можно встраивать в другие виджеты, но они не могут существовать самостоятельно. Например, Text, Icon, Container — это embedded-виджеты, так как они обычно используются внутри Row, Column или других родительских виджетов.
Пример:
Column(
children: [
Text('Привет, мир!'), // Embedded
Icon(Icons.star), // Embedded
],
)
Такие виджеты не управляют своим расположением самостоятельно — это делает родительский виджет (Column, Row, Stack и т. д.).
Ответ 18+ 🔞
Ну, вот смотри, как это работает на самом деле. Есть такие виджеты, которые сами по себе — ну, как младенец, ёпта. Без мамки-папы нихуя не могут. Их и называют embedded, или встроенные. Представь себе Text или Icon — они же не умеют сами решать, где им на экране висеть. Это как винтик, который без болта — просто железяка.
Их судьба — быть засунутыми куда-то. Обычно в Column, Row или Stack. Родительский виджет — он тут главный пахан, блядь. Он решает, кто где будет сидеть: сверху, снизу, слева, справа. А эти бедолаги-embedded только и делают, что говорят: "Вот я текст такой-то", или "Вот я иконка звезды". А всё остальное — не их собачье дело, доверия к ним в плане расположения — ноль ебать.
Пример, чтобы совсем понятно стало:
Column(
children: [
Text('Привет, мир!'), // Это embedded, чувак. Сам как личность — ни хуя.
Icon(Icons.star), // И это тоже. Красивая, но беспомощная мартышлюшка.
],
)
Вот Column взял этих двух убогих, расставил их вертикально и всё. Text и Icon даже не подозревают, в какой они иерархии, им да похуй. Они просто отрисовывают то, что им велели. Короче, embedded-виджет — это такой солдат, который без приказа командира шагу не ступит. Вся логика расположения — это головная боль его родителя. Пизда рулю, если попробуешь заставить Text самому управлять своим позиционированием — нихуя не выйдет, только овердохуища проблем получишь.