Как включить кнопку для определенного логического условия во Flutter? - PullRequest
0 голосов
/ 28 мая 2020

Я пытаюсь включить кнопку в приложении flutter для определенного логического условия, которое получено из документа firestore. В приведенном ниже коде должна быть вызвана общая функция checkTrueFalse() и получены значения bool из checkFinalValue1 и checkFinalValue2, и если checkFinalValue1 равно true, то Button1 должен дать результат при нажатии, и если checkFinalValue2 равно true, то Button2 следует включить, иначе он должен отображаться как отключенный.

Как это сделать в приложении флаттера? Я не могу найти Flatbutton свойств enable button, как у нас в Android Studio или Xcode

Widget build(BuildContext context) {
    String listid1 = widget.listid1;
    bool checkFinalValue1, checkFinalValue2;


  checkTrueFalse() { final DocumentReference docRef =  Firestore.instance.collection("list").document(listid1);


    docRef.get().then((DocumentSnapshot ds) {
      checkFinalValue1 = ds.data["value1"];
      checkFinalValue2 = ds.data["value2"];

       });}

       final button1 = FlatButton();
    return Card(child: ListTile(title:Text(widget.itemTitle),subtitle: Column(
      children: <Widget>[
        Text(widget.commentId),
        Container(
            child: Row(
              children: <Widget>[
                FlatButton(
                  child: Text("Button1"),
                  onPressed: () {

                  print("Check 1");


                  },
                ),
                FlatButton(
                  child: Text("Button2"),
                  onPressed: () { 

                    print("Button Enabled");

                  },
                ),
              ],
            ))
      ],
    ), ),);

  }

1 Ответ

1 голос
/ 28 мая 2020

Отключить плоскую кнопку, например

      FlatButton(
                child: Text("Button1"),
                onPressed: checkFinalValue1
                    ? () {
                        print("Check 1");
                      }
                    : null),

            FlatButton(
                child: Text("Button2"),
                onPressed: checkFinalValue2
                    ? () {
                        print("Button Enabled");

                      }
                    : null),
...