簡體   English   中英

如何在 Flutter 中禁用按鈕?

[英]How do I disable a Button in Flutter?

我剛剛開始掌握 Flutter 的竅門,但我無法弄清楚如何設置按鈕的啟用狀態。

從文檔中,它說將onPressed設置為 null 以禁用按鈕,並為其提供一個值以啟用它。 如果按鈕在生命周期內繼續處於相同狀態,這很好。

我的印象是我需要創建一個自定義的有狀態小部件,它允許我以某種方式更新按鈕的啟用狀態(或 onPressed 回調)。

所以我的問題是我該怎么做? 這似乎是一個非常簡單的要求,但我在文檔中找不到任何關於如何執行的信息。

謝謝。

我剛剛開始了解Flutter,但是我在弄清楚如何設置按鈕的啟用狀態時遇到了麻煩。

在文檔中,它說將onPressed設置為null以禁用按鈕,並為其提供值以啟用它。 如果按鈕在生命周期中繼續處於相同狀態,那就很好。

我得到的印象是,我需要創建一個自定義的有狀態小部件,該小部件將允許我以某種方式更新按鈕的啟用狀態(或onPressed回調)。

所以我的問題是我該怎么做? 這似乎是一個非常簡單的要求,但是我在文檔中找不到有關如何執行此操作的任何信息。

謝謝。

我剛剛開始了解Flutter,但是我在弄清楚如何設置按鈕的啟用狀態時遇到了麻煩。

在文檔中,它說將onPressed設置為null以禁用按鈕,並為其提供值以啟用它。 如果按鈕在生命周期中繼續處於相同狀態,那就很好。

我得到的印象是,我需要創建一個自定義的有狀態小部件,該小部件將允許我以某種方式更新按鈕的啟用狀態(或onPressed回調)。

所以我的問題是我該怎么做? 這似乎是一個非常簡單的要求,但是我在文檔中找不到有關如何執行此操作的任何信息。

謝謝。

我剛剛開始了解Flutter,但是我在弄清楚如何設置按鈕的啟用狀態時遇到了麻煩。

在文檔中,它說將onPressed設置為null以禁用按鈕,並為其提供值以啟用它。 如果按鈕在生命周期中繼續處於相同狀態,那就很好。

我得到的印象是,我需要創建一個自定義的有狀態小部件,該小部件將允許我以某種方式更新按鈕的啟用狀態(或onPressed回調)。

所以我的問題是我該怎么做? 這似乎是一個非常簡單的要求,但是我在文檔中找不到有關如何執行此操作的任何信息。

謝謝。

我剛剛開始了解Flutter,但是我在弄清楚如何設置按鈕的啟用狀態時遇到了麻煩。

在文檔中,它說將onPressed設置為null以禁用按鈕,並為其提供值以啟用它。 如果按鈕在生命周期中繼續處於相同狀態,那就很好。

我得到的印象是,我需要創建一個自定義的有狀態小部件,該小部件將允許我以某種方式更新按鈕的啟用狀態(或onPressed回調)。

所以我的問題是我該怎么做? 這似乎是一個非常簡單的要求,但是我在文檔中找不到有關如何執行此操作的任何信息。

謝謝。

我剛剛開始了解Flutter,但是我在弄清楚如何設置按鈕的啟用狀態時遇到了麻煩。

在文檔中,它說將onPressed設置為null以禁用按鈕,並為其提供值以啟用它。 如果按鈕在生命周期中繼續處於相同狀態,那就很好。

我得到的印象是,我需要創建一個自定義的有狀態小部件,該小部件將允許我以某種方式更新按鈕的啟用狀態(或onPressed回調)。

所以我的問題是我該怎么做? 這似乎是一個非常簡單的要求,但是我在文檔中找不到有關如何執行此操作的任何信息。

謝謝。

我剛剛開始了解Flutter,但是我在弄清楚如何設置按鈕的啟用狀態時遇到了麻煩。

在文檔中,它說將onPressed設置為null以禁用按鈕,並為其提供值以啟用它。 如果按鈕在生命周期中繼續處於相同狀態,那就很好。

我得到的印象是,我需要創建一個自定義的有狀態小部件,該小部件將允許我以某種方式更新按鈕的啟用狀態(或onPressed回調)。

所以我的問題是我該怎么做? 這似乎是一個非常簡單的要求,但是我在文檔中找不到有關如何執行此操作的任何信息。

謝謝。

我剛剛開始了解Flutter,但是我在弄清楚如何設置按鈕的啟用狀態時遇到了麻煩。

在文檔中,它說將onPressed設置為null以禁用按鈕,並為其提供值以啟用它。 如果按鈕在生命周期中繼續處於相同狀態,那就很好。

我得到的印象是,我需要創建一個自定義的有狀態小部件,該小部件將允許我以某種方式更新按鈕的啟用狀態(或onPressed回調)。

所以我的問題是我該怎么做? 這似乎是一個非常簡單的要求,但是我在文檔中找不到有關如何執行此操作的任何信息。

謝謝。

我剛剛開始了解Flutter,但是我在弄清楚如何設置按鈕的啟用狀態時遇到了麻煩。

在文檔中,它說將onPressed設置為null以禁用按鈕,並為其提供值以啟用它。 如果按鈕在生命周期中繼續處於相同狀態,那就很好。

我得到的印象是,我需要創建一個自定義的有狀態小部件,該小部件將允許我以某種方式更新按鈕的啟用狀態(或onPressed回調)。

所以我的問題是我該怎么做? 這似乎是一個非常簡單的要求,但是我在文檔中找不到有關如何執行此操作的任何信息。

謝謝。

我剛剛開始了解Flutter,但是我在弄清楚如何設置按鈕的啟用狀態時遇到了麻煩。

在文檔中,它說將onPressed設置為null以禁用按鈕,並為其提供值以啟用它。 如果按鈕在生命周期中繼續處於相同狀態,那就很好。

我得到的印象是,我需要創建一個自定義的有狀態小部件,該小部件將允許我以某種方式更新按鈕的啟用狀態(或onPressed回調)。

所以我的問題是我該怎么做? 這似乎是一個非常簡單的要求,但是我在文檔中找不到有關如何執行此操作的任何信息。

謝謝。

我剛剛開始了解Flutter,但是我在弄清楚如何設置按鈕的啟用狀態時遇到了麻煩。

在文檔中,它說將onPressed設置為null以禁用按鈕,並為其提供值以啟用它。 如果按鈕在生命周期中繼續處於相同狀態,那就很好。

我得到的印象是,我需要創建一個自定義的有狀態小部件,該小部件將允許我以某種方式更新按鈕的啟用狀態(或onPressed回調)。

所以我的問題是我該怎么做? 這似乎是一個非常簡單的要求,但是我在文檔中找不到有關如何執行此操作的任何信息。

謝謝。

我剛剛開始了解Flutter,但是我在弄清楚如何設置按鈕的啟用狀態時遇到了麻煩。

在文檔中,它說將onPressed設置為null以禁用按鈕,並為其提供值以啟用它。 如果按鈕在生命周期中繼續處於相同狀態,那就很好。

我得到的印象是,我需要創建一個自定義的有狀態小部件,該小部件將允許我以某種方式更新按鈕的啟用狀態(或onPressed回調)。

所以我的問題是我該怎么做? 這似乎是一個非常簡單的要求,但是我在文檔中找不到有關如何執行此操作的任何信息。

謝謝。

我剛剛開始了解Flutter,但是我在弄清楚如何設置按鈕的啟用狀態時遇到了麻煩。

在文檔中,它說將onPressed設置為null以禁用按鈕,並為其提供值以啟用它。 如果按鈕在生命周期中繼續處於相同狀態,那就很好。

我得到的印象是,我需要創建一個自定義的有狀態小部件,該小部件將允許我以某種方式更新按鈕的啟用狀態(或onPressed回調)。

所以我的問題是我該怎么做? 這似乎是一個非常簡單的要求,但是我在文檔中找不到有關如何執行此操作的任何信息。

謝謝。

您可以在您的應用程序中將此代碼用於加載和禁用按鈕:

class BtnPrimary extends StatelessWidget {
  bool loading;
  String label;
  VoidCallback onPressed;

  BtnPrimary(
      {required this.label, required this.onPressed, this.loading = false});

  @override
  Widget build(BuildContext context) {
    return ElevatedButton.icon(
      icon: loading
          ? const SizedBox(
              child: CircularProgressIndicator(
                color: Colors.white,
              ),
              width: 20,
              height: 20)
          : const SizedBox(width: 0, height: 0),
      label: loading ? const Text('Waiting...'): Text(label),
      onPressed: loading ? null : onPressed,
    );
  }
}

希望有用😊

我剛剛開始了解Flutter,但是我在弄清楚如何設置按鈕的啟用狀態時遇到了麻煩。

在文檔中,它說將onPressed設置為null以禁用按鈕,並為其提供值以啟用它。 如果按鈕在生命周期中繼續處於相同狀態,那就很好。

我得到的印象是,我需要創建一個自定義的有狀態小部件,該小部件將允許我以某種方式更新按鈕的啟用狀態(或onPressed回調)。

所以我的問題是我該怎么做? 這似乎是一個非常簡單的要求,但是我在文檔中找不到有關如何執行此操作的任何信息。

謝謝。

暫無
暫無

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

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