flutter - Row 内的 TextField 它破坏了代码
问题描述
我正在尝试制作自定义搜索小部件。当我在 Row 内添加 TextField 时,它破坏了代码。
我的代码没有 TextField。
import 'package:flutter/material.dart';
class SearchWidget extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Container(
decoration: BoxDecoration(
color: Colors.yellowAccent,
borderRadius: BorderRadius.circular(500),
),
child: Row(
children: [
Container(
decoration: BoxDecoration(
color: Colors.redAccent,
borderRadius: BorderRadius.circular(500),
),
child: IconButton(icon: Icon(Icons.search), onPressed: () {}),
),
],
),
);
}
}
但是在添加 TextField 之后,一切都会好起来的。
我的代码在 Row 内带有 TextField。
import 'package:flutter/material.dart';
class SearchWidget extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Container(
decoration: BoxDecoration(
color: Colors.yellowAccent,
borderRadius: BorderRadius.circular(500),
),
child: Row(
children: [
Container(
decoration: BoxDecoration(
color: Colors.redAccent,
borderRadius: BorderRadius.circular(500),
),
child: IconButton(icon: Icon(Icons.search), onPressed: () {}),
),
TextField(
decoration: InputDecoration(
labelText: "جستجو",
),
),
],
),
);
}
}
我在其他情况下遇到过这个问题,我认为这是行和列的任何问题。
解决方案
试试这个方法
你需要包装你的TextField
内部Expanded
小部件
class SearchWidget extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Container(
decoration: BoxDecoration(
color: Colors.yellowAccent,
borderRadius: BorderRadius.circular(500),
),
child: Row(
children: [
Container(
decoration: BoxDecoration(
color: Colors.redAccent,
borderRadius: BorderRadius.circular(500),
),
child: IconButton(icon: Icon(Icons.search), onPressed: () {}),
),
Expanded(
child: TextField(
decoration: InputDecoration(
labelText: "جستجو",
),
),
),
],
),
);
}
}
推荐阅读
- javascript - 如何使用 Jquery / DataTables 根据单击的元素获取表的列名
- swift - NSPersistentCloudKitContainer:与 App Extension 共享单个数据库
- r - knitr:在循环中生成带有标签的汇总表?
- instagram - 通过查询搜索来搜索所有 Instagram 用户
- javascript - map() 内部的条件不能按预期工作(React)
- python - Django 模型 hh:mm 字段
- c# - 无法从 Windows 窗体 DataGridView C# 获取数据
- c# - 从 Helix Tookit 保存图像
- cuda - 我有哪个 Cuda 版本?Conda 虚拟环境的奇怪行为
- asp.net-core - asp.net 核心在地址栏上显示正确的 url