當推動新螢屏并想要禁用向后滑動的功能時,我找到了WillPopScope小部件。
WillPopScope(
onWillPop: () async => false,
child: <some child>
但是,它可以防止滑動手勢無論與否我回來true的false。是否可以告訴這個小部件它可以在某些螢屏狀態下彈出?
如此有效地我會:
WillPopScope(
onWillPop: () async => widget._canSwipeBack,
child: <some child>
現在我根據螢屏狀態添加/不添加小部件,這看起來很奇怪。
uj5u.com熱心網友回復:
請參考以下代碼
不使用 WillPopScope 包裝小部件通常它會執行 Navigator.pop(context);
// disables swiping back
WillPopScope(
// disables swiping back or navigating back
onWillPop: () {},
child: Scaffold(
body: Container(),
),
);
WillPopScope(
onWillPop: () {
// whenever you want to navigate back to specific route
Navigator.push(
context,
MaterialPageRoute(builder: (context) => SecondRoute()),
);
},
child: Scaffold(
body: Container(),
),
);
WillPopScope(
onWillPop: () {
// pop back
Navigator.pop(context);
},
child: Scaffold(
body: Container(),
),
);
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/371254.html
下一篇:如何通過x和y坐標點擊iOS?
