Flutter 播放完毕后,按“不工作”按钮
我用的是音频包。它一直工作得很好,但是现在我希望当它完成播放时,如果用户没有付款,屏幕应该打开 代码如下:Flutter 播放完毕后,按“不工作”按钮,flutter,dart,flutter-dependencies,Flutter,Dart,Flutter Dependencies,我用的是音频包。它一直工作得很好,但是现在我希望当它完成播放时,如果用户没有付款,屏幕应该打开 代码如下: void closeScreen() { final _userHasPaid = Provider.of<User>(context, listen: false).user.testPaid; print("USER PAID = ${_userHasPaid}"); if (_userHasPaid == false &&
void closeScreen() {
final _userHasPaid =
Provider.of<User>(context, listen: false).user.testPaid;
print("USER PAID = ${_userHasPaid}");
if (_userHasPaid == false && widget.breathwork.breathType == "F") {
print("got here");
Navigator.push(
context,
MaterialPageRoute(
builder: (context) {
print(" and got here");
return PaymentsScreen();
},
),
);
}
disposeAudio();
print("should pop now");
Navigator.pop(context);
void closeScreen(){
最终用户已支付=
Provider.of(context,listen:false).user.testPaid;
打印(“用户付费=${u userhaspayed}”);
if(_userhaspayd==false&&widget.breathwork.breathType==F){
打印(“到达这里”);
导航器。推(
上下文
材料路线(
生成器:(上下文){
打印(“并到达这里”);
返回PaymentsScreen();
},
),
);
}
disposeAudio();
打印(“现在应该弹出”);
Navigator.pop(上下文);
}
在我介绍Navigator.push之前,一切都很好,用Navigator.pop关闭屏幕。但是,一旦添加推送代码,我就无法获得PaymentsScreen,最后的Navigator.pop也不再工作
我确实看到控制台上的以下打印:
打印用户付费
打印到这里
印刷品现在应该流行了
但不是为了:
打印到这里
非常感谢您的帮助,谢谢您不能同时调用Navigator.push和pop函数,您必须转到付款页面,然后在付款完成后从那里弹出,并添加disposeAudio();推送至付款页面前的功能
void closeScreen(){
disposeAudio();
最终用户已支付=
Provider.of(context,listen:false).user.testPaid;
打印(“用户付费=${u userhaspayed}”);
if(_userhaspayd==false&&widget.breathwork.breathType==F){
打印(“到达这里”);
导航器。推(
上下文
材料路线(
生成器:(上下文){
打印(“并到达这里”);
返回PaymentsScreen();
},
),
);
}
谢谢,这样更清楚。但我确实需要弹出。我不想在付款完成后返回此屏幕,但要返回之前的屏幕。您可以从这里进入该屏幕