簡體   English   中英

Go 返回上一頁 flutter

[英]Go back to previous page in flutter

我有一個 flutter 應用程序,它通過按配對設備列表中的設備名稱通過藍牙連接設備。 這是編碼:

final BluetoothDevice server;


 DataCollectionPage({required this.server});
...............................................................................

               child: ListView(
                 children: devices
                     .map((_device)=> BluetoothDeviceListEntry(
                   device: _device,
                   enabled: true,
                   onTap: (){
                     if (kDebugMode) {
                       print("item");
                     }
                     _startDataCollection(context, _device);
                   },
................................................................................
void _startDataCollection(BuildContext context, BluetoothDevice server){
 Navigator.of(context).push(MaterialPageRoute(builder: (context){
   return DataCollectionPage(server: server);
 }));
}

然后,一旦我導航到“ DataCollectionPage ”頁面,我將執行一些操作和數據收集方法,最后我將在另一個名為“DataCollectionTimer”的頁面中。 在此頁面中,一個計時器將在屏幕上顯示幾秒鍾,然后在該計時器結束時將顯示一個對話框以提供一些消息,最后一旦我按下此對話框上的按鈕關閉,我想 go 返回 DataCollectionPage。 所以如果我嘗試使用

MaterialPageRoute( builder: (context) => DataCollectionPage(),   ),

它會出錯,因為需要參數“服務器”,這是我從另一個 class 中的配對設備列表中獲得的。有沒有辦法從當前的 go 返回到 DataCollectionPage 而無需一直返回頁面配對設備列表在哪里。

先感謝您

您需要將服務器字段設為可選,然后使用 popUntil

final BluetoothDevice? server;

DataCollectionPage({this.server});

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM