gpt4 book ai didi

flutter - Flutter如何创建右图带有两个图标的文本框,与图像中的一样?

转载 作者:行者123 更新时间:2023-12-03 03:33:34 24 4
gpt4 key购买 nike

如何创建与图像相同的TextField小部件,在x上我需要清除输入,在搜索图标上,我需要调用一些在这里不重要的方法。
enter image description here

这是目前没有x图标的代码。

TextField(
onChanged: (value) {
userTappedSearch(value);
},
decoration: InputDecoration(
hintText: "search",
suffixIcon:
Container(
padding: const EdgeInsets.symmetric(
horizontal: 0.0, vertical: 20),
decoration: new BoxDecoration(
color: SBColor.navyBlue,
borderRadius: new BorderRadius.only(
topRight: const Radius.circular(20.0),
)),
child: IconButton(
icon: Icon(Icons.search),
color: SBColor.white,
onPressed: () {})),
border: OutlineInputBorder(
borderRadius: new BorderRadius.only(
topRight: const Radius.circular(20.0),
))),
),

最佳答案

在行内使用TextField和Container可以实现以下目的:

TextEditingController _textController = TextEditingController();

final border = OutlineInputBorder(
borderRadius: BorderRadius.horizontal(left: Radius.circular(5))
);

@override
Widget build(BuildContext context) {
return Scaffold(
body: Center(
child: Padding(
padding: const EdgeInsets.all(8.0),
child: Row(
children: <Widget>[
Expanded(
child: TextField(
controller: _textController,
decoration: InputDecoration(
contentPadding: EdgeInsets.all(10),
hintText: 'Search',
border: border,
errorBorder: border,
disabledBorder: border,
focusedBorder: border,
focusedErrorBorder: border,
suffixIcon: IconButton(
icon: Icon(Icons.clear),
onPressed: () {
_textController.clear();
},
),
),
),
),
Container(
decoration: BoxDecoration(
color: Colors.blue[800],
borderRadius: BorderRadius.only(topRight: Radius.circular(10))
),
child: IconButton(icon: Icon(Icons.search, color: Colors.white,), onPressed: (){}),
)
],
),
),
),
);
}

结果:

Search Widget

关于flutter - Flutter如何创建右图带有两个图标的文本框,与图像中的一样?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62430293/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com