Навигатор.нажмите в Listview.builder и кнопку «Назад» andriod

#android #flutter #dart

Вопрос:

  • Структура моего приложения: Обложка -> Страница входа ->> Главная страница ->>> Страница сведений

На главной странице создайте виджет-контейнер для каждой страницы сведений с помощью Listview.builder. Затем перейдите в навигатор.нажимайте каждую страницу сведений при нажатии на этот контейнер. Когда я нажимаю «Кнопку возврата Android» на «Странице сведений», я хочу перейти на главную страницу, однако я перемещаюсь на страницу входа. Как я могу это исправить? К вашему сведению, если я создам кнопку на странице подробностей для Navitor.pop, я перейду на главную страницу, как это должно работать.

 //Mainpage's ListBuiler
...


return ListView.builder(
  itemCount: filteredNames.length,
  itemBuilder: (context, index) {
     if (filteredNames != [] amp;amp;
         filteredNames.length ==
              doneCntList?.length) {
          return ClassDivid(
                   id,
                   pw,
                   filteredNames[index] ?? "",
                   doneCntList![index] ?? "",
                   userProps);
                  } else {
                  return Text("");
            }
      },
);
...

//ClassDivid's Navigator.push
...
class _ClassDividState extends State<ClassDivid> with TickerProviderStateMixin {
 var id, pw, classProps, doneCnt, userProps;
 var assignmentProps;
 double progressCnt = 0;
 List<dynamic> assignment = [];
 _ClassDividState(
     this.id, this.pw, this.classProps, this.doneCnt, this.userProps);

 @override
 void initState() {
   super.initState();
 }

 Widget build(BuildContext context) {


   return GestureDetector(
     onTap: () {
       Navigator.push(
           context,
           PageTransition(
               type: PageTransitionType.leftToRightWithFade,
               child: MyAssignment(classProps, assignmentProps, doneCnt)));
     },
      child: Container(
          margin: const EdgeInsets.symmetric(vertical: 7),
          decoration: BoxDecoration(
...