ยังไงต้องโทรเรียกฟังก์ชันตอนที่ปุ่มคือมีการคลิก 10 ครั้งในกระพือภาพ?

0

คำถาม

จะให้ฉันโทรหาวิธีการตอนที่ปุ่มคือมีการคลิก 10 ครั้ง นี่คือรหัสสำหรับปุ่ม

NextQuestionButton(
              onClick: () {
                if (answerWasSelected) {
                  _nextQuestion();
                } else {
                  return;
                }
              },
            )
android button dart flutter
2021-11-23 11:26:07
3

คำตอบที่ดีที่สุด

1

พยายามที่จะเพิ่มจำนวนตัวแปรที่พ่อแม่ stateful วิดเจ็ต.
และเพิ่มจำนวนตัวแปรตอนที่ปุ่มคือมีการคลิกและเช็คไม่ว่าจะนับเป็นมากกว่า 10 ขวบ
ถ้านับเป็นจบแล้ว excute วิธีการและปรับค่านับนะ

class ParentWidget extends StatefulWidget {
}

class _ParentWidget extends State<ParentWidget> {
   int buttonCount = 0;

   Widget build(BuildContext context) {
       return ...

          NextQuestionButton(
              onClick: () {
                buttonCount += 1;
                if (answerWasSelected && buttonCount > 9) {
                  buttonCount = 0;
                  _nextQuestion();
                } else {
                  return;
                }
              },
            )
...
2021-11-23 11:36:17
0

คุณสามารถเพิ่มเคาน์เตอร์เพื่อนปุ่มและเพิ่มมันเป็นจำนวนคลิกบนแล้วปรับใช้ตรรกะมันตอนที่นับ==10

int answerWasSelected =1;


NextQuestionButton(
              onClick: () {
 setState(() {
    answerWasSelected++;
  });
                if (answerWasSelected==10) {
                  _nextQuestion();
                } else {
                  return answerWasSelected;
                }
              },
            )
`
2021-11-23 11:30:49
0

แค่ทำให้เป็นเคาน์เตอร์เพื่อนของปุ่มและเมื่อนับเป็น getter ว่า 9 แล้วทำให้คนนับ 0 และโทรเรียกของคุณวิธีการ.

    class YourScreen extends StatefulWidget {
}

class _YourScreen extends State<YourScreen> {
   int countOnButton = 0;

   Widget build(BuildContext context) {
       return Scaffold(

     body:     NextQuestionButton(
              onClick: () {
                countOnButton += 1;
                answerWasSelected && countOnButtoon > 9 
                 ?  _nextQuestion()
                 :  print("methed not working") ;
               
              },
            )
);
2021-11-23 11:36:12

ในภาษาอื่นๆ

หน้านี้อยู่ในภาษาอื่นๆ

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................