【发布时间】:2020-08-09 00:10:42
【问题描述】:
我在主状态小部件类中有一个搜索视图,在另一个小部件类中有一个列表视图。 现在,当用户搜索某些内容时,我想将搜索文本传递给 listview 小部件以调用 api。
那我该怎么做呢?
第一次打开列表时会起作用,但是当我搜索某些内容时,我该如何再次调用它?
下面是我的代码sn-p。
Stack(
children: <Widget>[
Flex(
direction: Axis.vertical,
crossAxisAlignment: CrossAxisAlignment.start,
children: <Widget>[
Divider(
color: ColorsApp.gray,
height: 1,
),
searchView(),
Expanded(
child: OrderList(
isSearch: isSearch,
textSearch: textSearch,
onCallBack: widget.onCalBack,
),
),
],
),
],
);
现在搜索文本更改
void _onTextChange(String value) {
print(tag + "....value........" + value);
if (value == "") {
_writtingStatusController.add(true);
_customSearchViewController.add(false);
setState(() {
textSearch = "";
isSearch = true;
});
} else {
_writtingStatusController.add(false);
_customSearchViewController.add(true);
setState(() {
textSearch = value;
isSearch = true;
});
}
}
订单列表类
class OrderList extends StatefulWidget {
final String textSearch;
final bool isSearch;
final Function onCallBack;
const OrderList({
Key key,
this.textSearch,
this.onCallBack,
this.isSearch,
}) : super(key: key);
@override
_OrderListState createState() => _OrderListState();
}
【问题讨论】:
-
也添加您的
searchView()方法。您的search和list在一个小部件(文件/路由)中。 -
我想在搜索某些内容时将搜索文本传递给 ORDER LIST 类。那么如何每次都将 SEARCH TEXT 传递给 ORDER LIST 类,以及如何将它传递给 ORDER LIST 类,因为当它传递 init 方法时不会每次都调用。
-
不,我没有使用流生成器你能举一个例子在这种情况下如何使用它吗?
-
我的文本搜索类不同,订单列表类不同,但两者都在设计中的一页中。我制作了两个类小部件,所以我关心的只是当我搜索某些内容时如何将搜索文本传递给另一个类小部件。