flutter - Flutter:构建一个带有 Text 类型子参数的容器
问题描述
我是 Flutter 的新手。我想制作一个以 Text 作为参数的容器。我怎样才能做到这一点?这是我的代码:
class TopBar extends StatefulWidget {
final Text text;
TopBar({
Key key,
this.text,
}) : super(key: key);
_TopBarState _TopBarState = _TopBarState();
@override
_TopBarState createState() {
return this._TopBarState = _TopBarState();
}
}
class _TopBarState extends State<TopBar> {
@override
Widget build(BuildContext context) {
return Align(
child: Container(
child: Row(
children: [
// how to add parametrized text here?
],
),
),
),
);
}
}
谢谢!
解决方案
将数据类型保留为字符串而不是文本。您可以在小部件中使用 widget.text 访问该值。但是,您可以将数据类型保留为文本,但您必须传递一个 Text 小部件。
这是代码:
class TopBar extends StatefulWidget {
final String text;
TopBar({
Key key,
this.text,
}) : super(key: key);
_TopBarState _TopBarState = _TopBarState();
@override
_TopBarState createState() {
return this._TopBarState = _TopBarState();
}
}
class _TopBarState extends State<TopBar> {
@override
Widget build(BuildContext context) {
return Align(
child: Container(
child: Row(
children: [
Text(widget.text),
],
),
),
),
);
}
}
推荐阅读
- shell - 使用 shell 脚本,如何在以哈希开头的文件中插入一行?
- azure - 缓存 Azure KeyVault ClientID 和指纹是最佳做法吗?
- python - 如果打开现有的 Chrome 窗口,则使用默认选项的 Selenium Webdriver 永远不会返回
- java - 以编程方式将 ImageView 添加到布局
- python - 视频/图像分析以获取轮廓之间的距离
- mysql - 如何从一个表中只选择行 一个 clumns 值大于 MySQL 中的 b 表计数值
- javascript - GWT CellTable:选择一个复选框会选择表格中的每个复选框/行
- mysql - 在 mysql 中使用其他表中的 MAX 函数
- python-3.x - 使用 GRU 将 conv1D 转换为 Conv2D
- python - 仅针对特定 ID/主题进行训练/测试拆分