Flutter hintText不显示为内联
我试图在文本字段中对齐图标和文本,但是输出与我计划的不一致,下面是我的代码:Flutter hintText不显示为内联,flutter,textfield,Flutter,Textfield,我试图在文本字段中对齐图标和文本,但是输出与我计划的不一致,下面是我的代码: class _HomeScreenState extends State<HomeScreen> { @override Widget build(BuildContext context) { return Scaffold( appBar: AppBar( leading: IconButton( icon: Icon(Icons.account_circle),
class _HomeScreenState extends State<HomeScreen> {
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
leading: IconButton(
icon: Icon(Icons.account_circle),
iconSize: 30.0,
onPressed: () {
},
),
title: Text('Food Delivery'),
centerTitle: true,
actions: <Widget>[
FlatButton(
child: Text('Cart (${currentUser.cart.length})',
style: TextStyle(color: Colors.white, fontSize: 15.0),),
onPressed: () {
},
)
],
),
body: ListView(
children: <Widget>[
Padding(
padding: EdgeInsets.all(20.0),
child: TextField(
decoration: InputDecoration(
contentPadding: EdgeInsets.symmetric(vertical: 15.0),
border: OutlineInputBorder(
borderRadius: BorderRadius.circular(30.0),
borderSide: BorderSide(width: 0.8)
),
hintText: 'Search Food or Restaurants',
prefixIcon: Icon(Icons.search, size: 30.0,),
suffix: IconButton(
icon: Icon(Icons.clear),
onPressed: () {
},
)
),
),
),
],
),
);
}
}
class\u homescrenstate扩展状态{
@凌驾
小部件构建(构建上下文){
返回脚手架(
appBar:appBar(
领先:IconButton(
图标:图标(图标、账户和圆圈),
iconSize:30.0,
已按下:(){
},
),
标题:文本(“食品交付”),
标题:对,
行动:[
扁平按钮(
子项:文本(${currentUser.Cart.length}),
样式:TextStyle(颜色:Colors.white,fontSize:15.0),
已按下:(){
},
)
],
),
正文:ListView(
儿童:[
填充物(
填充:所有边缘设置(20.0),
孩子:TextField(
装饰:输入装饰(
内容填充:边集。对称(垂直:15.0),
边框:大纲输入边框(
边界半径:边界半径。圆形(30.0),
borderSide:borderSide(宽度:0.8)
),
hintText:“搜索食物或餐馆”,
前缀:图标(Icons.search,大小:30.0,),
后缀:IconButton(
图标:图标(图标。清除),
已按下:(){
},
)
),
),
),
],
),
);
}
}
我无法发现问题,模拟器和实际设备上的输出是相同的:
我想这可能是搜索图标的问题,但是,减小图标的大小并没有改变输出。任何人都可以建议一种修复方法,使提示文本与图标内联显示。问题是
contentPadding:边集。对称(垂直:
15)
试着减少它。垂直填充从顶部和底部都添加了填充。如您所述,问题在于后缀/前缀中的图标! 所以这是另一种选择
Container(
decoration: BoxDecoration(
borderRadius: BorderRadius.circular(30),
border: Border.all(color: Colors.white, width: 0.8)),
padding: EdgeInsets.all(10.0),
child: Row(
children: <Widget>[
Icon(
Icons.search,
size: 30.0,
),
SizedBox(width: 10),
Expanded(
child: TextField(
decoration: InputDecoration(
border:InputBorder.none,
contentPadding: EdgeInsets.symmetric(vertical: 15.0),
hintText: 'Search Food or Restaurants',
),
),
),
IconButton(
icon: Icon(Icons.clear),
onPressed: () {},
)
],
),
),
容器(
装饰:盒子装饰(
边界半径:边界半径。圆形(30),
边框:边框。全部(颜色:Colors.white,宽度:0.8)),
填充:所有边缘设置(10.0),
孩子:排(
儿童:[
图标(
Icons.search,
尺寸:30.0,
),
尺寸箱(宽度:10),
扩大(
孩子:TextField(
装饰:输入装饰(
边框:InputBorder.none,
内容填充:边集。对称(垂直:15.0),
hintText:“搜索食物或餐馆”,
),
),
),
图标按钮(
图标:图标(图标。清除),
按下:(){},
)
],
),
),