如何防止用户返回上一页。
例如,我有page 1, page 2, submission successful
,
我注意到,即使我不包括后退按钮,并且用户尝试使用设备的后退按钮/手势,也会向用户显示上一个屏幕。
当用户尝试使用设备的后退按钮或轻扫访客时,如何将他发送到屏幕page 1
而不是page 2
答案 0 :(得分:0)
要禁用后退按钮,可以使用WillPopScope包装小部件。
df = pd.concat([pd.DataFrame([0]*4, columns=['rate']), df])
df.index.name = 'hour'
fig, ax = plt.subplots(1,1, figsize = (12, 8))
df.plot(kind = "bar", xlim = (0,24), ax=ax)
对于滑动动画,您可以使用GesturedDetector包装小部件并切换标签。
@override
Widget build(BuildContext context) {
return WillPopScope(
onWillPop: () async => false,
child: .....
);
}
另一个选项是PageView。 PageView.builder实现的示例是:
GestureDetector(
onHorizontalDragEnd: (DragEndDetails details) => _onHorizontalDrag(details),
child: Container(),
)
答案 1 :(得分:0)
您可以使用WillPopScope小部件
Widget build(BuildContext context) {
return WillPopScope(
onWillPop: () => Future.value(false);
child: // The rest of your code here
)}
这将阻止它使用android后退按钮导航回去。
答案 2 :(得分:0)
一种实现方法是调用pushReplacement
的{{1}}方法而不是Navigator
。这样,您就可以从堆栈中删除旧路由,然后将其替换为新路由。