Dart 如何在搜索代理上添加hintText?
如何在Flatter showSearch()上更改提示文本和提示文本颜色Dart 如何在搜索代理上添加hintText?,dart,flutter,flutter-layout,Dart,Flutter,Flutter Layout,如何在Flatter showSearch()上更改提示文本和提示文本颜色 AppBar( 背景颜色:Colors.blue, 标题:对, 标题:appBarIcon(上下文), 行动:[ 图标按钮( 图标:图标(Icons.search), 已按下:(){ showSearch( 上下文:上下文, 委托:CustomSearchDelegateAssets(_searchdata,widget.regId)); }) ], ), 根据ofshowSearch方法,它只需推送一条新路线- 这个内
AppBar(
背景颜色:Colors.blue,
标题:对,
标题:appBarIcon(上下文),
行动:[
图标按钮(
图标:图标(Icons.search),
已按下:(){
showSearch(
上下文:上下文,
委托:CustomSearchDelegateAssets(_searchdata,widget.regId));
})
],
),
根据ofshowSearch
方法,它只需推送一条新路线-
这个内部定义的路由提供了一个有状态的小部件(\u SearchPage
),它包括一个新构建的AppBar
,其中包含一个文本字段
您需要做的是基于\u SearchPageRoute
创建自定义路由,返回自定义\u SearchPage
。需要根据showSearch
逻辑通过您自己的方法推送路线
要实现自定义hintText
和hintStyle
,请在自定义\u SearchPageState
中修改输入装饰
e、 g.MySearchPageRoute
类MySearchPageRoute扩展了PageRoute{
// ...
@凌驾
小部件构建页面(
构建上下文上下文,
动画,,
动画二级动画,
) {
返回MySearchPage(//KEY PROP:基于`\u SearchPage的自定义有状态小部件`
代表:代表,
动画:动画,
);
}
// ...
}
我的搜索页面:
类MySearchPage扩展StatefulWidget{
// ...
@凌驾
State createState()=>MySearchPageState();
}
类MySearchPageState扩展了状态{
// ...
@凌驾
小部件构建(构建上下文){
// ...
返回语义(
// ...
孩子:脚手架(
appBar:appBar(
// ...
标题:文本字段(
// ...
装饰:输入装饰(
边框:InputBorder.none,
hintText:“我的自定义搜索标签”//KEY PROP
hintStyle:TextStyle(颜色:Colors.red),//按键
),
),
// ...
),
// ...
)
);
}
// ...
}
推动路线:
Future showMySearch({
@所需的BuildContext上下文,
@必需的搜索代理,
字符串查询=“”,
}) {
// ...
返回Navigator.of(context.push)(MySearchPageRoute(//KEY PROP
代表:代表,
));
}
换句话说,只需复制\u SearchPageRoute
,\u SearchPage
,\u SearchPageState
和showSearch
。然后根据ofshowSearch
方法对我用//KEY PROP
标记的行进行更改,它只是推送一条新路线-
这个内部定义的路由提供了一个有状态的小部件(\u SearchPage
),它包括一个新构建的AppBar
,其中包含一个文本字段
您需要做的是基于\u SearchPageRoute
创建自定义路由,返回自定义\u SearchPage
。需要根据showSearch
逻辑通过您自己的方法推送路线
要实现自定义hintText
和hintStyle
,请在自定义\u SearchPageState
中修改输入装饰
e、 g.MySearchPageRoute
类MySearchPageRoute扩展了PageRoute{
// ...
@凌驾
小部件构建页面(
构建上下文上下文,
动画,,
动画二级动画,
) {
返回MySearchPage(//KEY PROP:基于`\u SearchPage的自定义有状态小部件`
代表:代表,
动画:动画,
);
}
// ...
}
我的搜索页面:
类MySearchPage扩展StatefulWidget{
// ...
@凌驾
State createState()=>MySearchPageState();
}
类MySearchPageState扩展了状态{
// ...
@凌驾
小部件构建(构建上下文){
// ...
返回语义(
// ...
孩子:脚手架(
appBar:appBar(
// ...
标题:文本字段(
// ...
装饰:输入装饰(
边框:InputBorder.none,
hintText:“我的自定义搜索标签”//KEY PROP
hintStyle:TextStyle(颜色:Colors.red),//按键
),
),
// ...
),
// ...
)
);
}
// ...
}
推动路线:
Future showMySearch({
@所需的BuildContext上下文,
@必需的搜索代理,
字符串查询=“”,
}) {
// ...
返回Navigator.of(context.push)(MySearchPageRoute(//KEY PROP
代表:代表,
));
}
换句话说,只需复制\u SearchPageRoute
,\u SearchPage
,\u SearchPageState
和showSearch
。然后在我用//KEY PROP
标记的行中进行更改
AppBar(
backgroundColor: Colors.blue,
centerTitle: true,
title: appBarIcon(context),
actions: <Widget>[
IconButton(
icon: Icon(Icons.search),
onPressed: () {
showSearch(
context: context,
delegate: CustomSearchDelegateAssets(_searchdata, widget.regId));
})
],
),