簡體   English   中英

onTap替換來自另一個文件波動的小部件

[英]onTap replace widget from another file flutter

假設我的App()包含一些小部件,並且為了使代碼看起來更漂亮,我為子小部件創建了類。 現在,這些子窗口小部件包含onTap函數,這些函數應替換App()上的窗口小部件,那么我該如何解決此類問題?

您正在執行的操作的一些代碼將很有用,或者在您嘗試“替換小部件”的地方。

如果用替換表示在另一個位置顯示一個不同的窗口部件,則只需使用布爾值來決定顯示哪個窗口部件即可。 這些是我將要執行的步驟。

  1. 使您的App()中的小部件成為有狀態的,並創建一個成員變量boolean,名為showingOriginalWidget = true;。
  2. 在您的子小部件類中,在名為onSwapWidget的參數中加入一個Function。
  3. 在子窗口小部件的onTap函數中,調用onSwapWidget()
  4. 在您的App()中,提供正在執行此操作的小部件以及您的Function,以回調到

見下文

childWidget(onSwapWidget: (){
  setState((){
     // toggle the original widget state
     showingOriginalWidget = !showOriginalWidget;
  });
});
  1. 在顯示小部件的位置添加一個條件,以便根據值顯示任一條件。

...
child: showingOriginalWidget ? originalWidget() : swappedOutWidget()
...

這應該夠了吧。

暫無
暫無

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

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