شرح Future.delayed في Flutter للمبتدئين

x32x01
  • بواسطة x32x01 ||

⏳ يعني إيه Future.delayed وليه بنحتاجه في Flutter؟​

وأنت شغال Flutter، أكيد قابلتك لحظة احتجت فيها تأخير تنفيذ كود شوية 🤔
زي مثلًا:
  • Splash Screen تفضل ظاهرة ثانيتين
  • رسالة نجاح تظهر وبعدين تختفي
  • Dialog يقفل لوحده
  • زرار يظهر بعد وقت بسيط
هنا يطلع البطل الخفي: Future.delayed 🦸‍♂️


🤔 Future.delayed بيعمل إيه بالظبط؟​

ببساطة شديدة: Future.delayed هو منبّه
بتقوله: استنى الوقت ده… وبعده نفّذلي الكود ده
الوقت ممكن يكون:
  • ثواني
  • ميلي ثانية
  • دقايق
وكل ده من غير ما يعلّق التطبيق ولا يجمّده ❌


✅ شكل Future.delayed في الكود​

الكود أبسط مما تتخيل 👇
Code:
Future.delayed(Duration(seconds: 3), () {
  print("أنا جيت نورت البيت بعد 3 ثواني 😎");
});
📌 اللي بيحصل هنا:
  • Flutter يستنى 3 ثواني
  • وبعدها ينفّذ الكود اللي جوه


⏱️ استخدامه مع async / await​

تقدر تستخدمه بشكل أنضف مع async / await 👌
Code:
await Future.delayed(Duration(seconds: 2));
print("الكود اشتغل بعد ثانيتين");
ده مفيد جدًا لما الكود اللي بعده يعتمد على التأخير.


🚀 أشهر استخدامات Future.delayed في Flutter​

🖼️ Splash Screen​

أشهر استخدام ليه 👇
Code:
Future.delayed(Duration(seconds: 2), () {
  Navigator.pushReplacement(
    context,
    MaterialPageRoute(builder: (_) => HomePage()),
  );
});

🎭 محاكاة تحميل بيانات (Demo)​

لو بتعمل عرض أو تجربة:
Code:
Future.delayed(Duration(seconds: 1), () {
  setState(() {
    isLoading = false;
  });
});

✨ UI Feedback وتأثيرات بسيطة​

زي إظهار Text أو Button بعد شوية:
Code:
Future.delayed(Duration(milliseconds: 500), () {
  setState(() {
    showText = true;
  });
});

🚪 قفل Dialog أو SnackBar تلقائي​

Code:
Future.delayed(Duration(seconds: 3), () {
  Navigator.pop(context);
});
📌 حركة لطيفة تحسّن تجربة المستخدم.


⚠️ أخطاء شائعة وانت لازم تخلي بالك منها​

  • ❌ متستخدموش علشان تغطي بطء API
  • ❌ متعتمدش عليه في Logic مهم
  • ❌ متحطوش في Loop من غير وعي
Future.delayed مش حل مشاكل الأداء 😅


💡 نصيحة أخوية من الآخر​

لو:
  • الـ API بطيء → حلها Optimization
  • الداتا تقيلة → Cache أو Pagination
  • المستخدم مستني → Loading حقيقي
📌 Future.delayed:
  • للـ UX
  • للتجربة
  • للتأثيرات البسيطة
مش علشان نضحك على نفسنا 😉


✅ الخلاصة​

  • Future.delayed = تأخير غير مضر
  • شغال Asynchronous
  • ممتاز للـ UI
  • خطر لو استخدمته غلط
📌 استخدمه بذكاء… Flutter هيكافئك 😎🚀
 
المواضيع ذات الصلة
x32x01
الردود
0
المشاهدات
600
x32x01
x32x01
x32x01
الردود
0
المشاهدات
468
x32x01
x32x01
x32x01
الردود
0
المشاهدات
604
x32x01
x32x01
x32x01
الردود
0
المشاهدات
575
x32x01
x32x01
x32x01
الردود
0
المشاهدات
937
x32x01
x32x01
الدخول أو التسجيل السريع
نسيت كلمة مرورك؟
إحصائيات المنتدى
المواضيع
2,275
المشاركات
2,487
أعضاء أكتب كود
547
أخر عضو
exozonlyperson
عودة
أعلى