اذهب إلى المحتوى

السؤال

نشر

لدي صف الحالة 

class _ProfileState extends State<Profile> {
   String name='';
   String code='';
   String birthday='';
   String sex='';
   String nationality='';
   String nationalnum='';
   String carNum='';
   String photo='';
   double  balance=0;
   // int x=0;
   // String y='';

   bool isDataReadt = false;
  @override
  void initState(){
    super.initState();
    UpdateUI();
  }
   void changebalanc(){
     print('balance');

     setState() {
      this.balance = 10000;
      print(balance);
    };
   }

وعند النقر على الزر لا يتم تحديث الصفحة (ضمن الواجهة)

          Container(
            child: IconButton(onPressed: (){
              changebalanc();
            }, icon: Icon(Icons.minimize)),
          ),

 

Recommended Posts

  • 0
نشر

لديك خطأ في استدعاء دالة set state , الطريقة الصحيحة للاستدعاء هي:

void changebalanc(){
  
  print('balance');

  setState(
    (){
           this.balance = 10000;
           print(balance);
	});
}

,الشكل العام للدالة هي 

setState(	() { _myState = newValue; }	);
		^^^^^^^^^^^^^^^^^^^^^^^^^^^

حيث تأخذ وسيط عبارة عن دالة Callback Function تغير على قيمة خاصية في صنف الحالة ثم تعيد استدعاء دالة Build لإعادة رسم الصفحة render page

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...