Как go вернуться на предыдущую страницу при нажатии кнопки? - PullRequest
0 голосов
/ 14 июля 2020

После нажатия кнопки нижеприведенная команда выполняется успешно.

Navigator.push(context, MaterialPageRoute(builder:(context)=>NewForm(stateCheck: widget.state1,)));

Но я хочу, чтобы это произошло при определенном логическом условии, если условие ложно, то указанное выше должно выполняться иначе при нажатии Нажмите кнопку, чтобы перейти к предыдущему экрану.

if (a == b){
    Navigator.push(context, MaterialPageRoute(builder:(context)=>NewForm(stateCheck: widget.state1,)));
} else {
//what command should be written here to move to back to previous screen
}

В общем, есть 3 экрана: S1, S2 и S3 соответственно. Текущий экран - S2, при нажатии кнопки, если условие ложно, пользователь должен перейти на экран S3, а если условие истинно, пользователь должен перейти на экран S1, как мне этого добиться?

1 Ответ

0 голосов
/ 14 июля 2020

Если экран S1 отличается от потока, например, если ваш поток S1-> S2-> S3, то к go обратно к S1 вы можете сделать Navigator.pop(context), это переместит вас к S1 обратно к S2.

Если ваш поток отличается, значит, вы переходите на S2 с другого, чем S1, скажем, S3, но хотите go на S1, тогда используйте Navigator.push(), как вы делали раньше.

Я думаю, это должно решить ваша проблема ..

...