簡體   English   中英

如何以編程方式在 flutter 中的堆棧下調用多個小部件

[英]How to programmatically call multiple widget under a stack in flutter

我有一個帶有幾個按鈕的屏幕,我想為每個按鈕顯示一個滑動面板(傳遞一些信息以顯示在面板中)。

我用過這個小部件: https://pub.dev/packages/sliding_up_panel

我想了解如何在單擊特定按鈕后顯示堆棧下的小部件以編程方式傳遞一些信息。 有可能的?

在簡短的代碼片段之后,我們可以看到包含 SlidingPanel 的堆棧。 我希望能夠顯示滑動面板單擊特定按鈕並以編程方式將信息傳遞給它。

到目前為止,我發現的唯一解決方案是將所有可能的滑動面板添加到堆棧中,然后單擊僅顯示我需要的按鈕的按鈕,但我希望有更好的方法來做到這一點。

謝謝

return Stack(
  children: [
    Scaffold(
    .....
    ),
    SlidingUpPanel(
      panelController: panelController,
      nameTEController: nameTEPanel,
      platform: 'Instagram',
    )
    ]

只需在列表中填充您的小部件列表。 如果您使用的是 StatefullWidget,則只需調用setState(() => )

你可以這樣做:

List<Widget> _myWidgetList = [];
[...]
return Stack(
  children: _myWidgetList);

List<Widget> _buildMyWidgetList() {
  final List<Widget> tmpList = [];
  tmpList..add(Widget1)
    ..add(Widget2);
  setState(() => _myWidgetList = tmp);
}

然后只需在按鈕上調用您的 buildWidgets 函數。

另一種方法是使用 Bloc: https://pub.dev/packages/flutter_bloc

暫無
暫無

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

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