Avatar ·

كيفية استدعاء دالة مع تأخير في Android (Java)

مرحباً بالجميع! أنا مبتدئ في تطوير Android وأكتب بلغة Java. واجهت مشكلة: أحتاج بعد الضغط على زر إلى ظهور رسالة Toast على الشاشة، ولكن ليس فوراً، بل بعد 3 ثوانٍ. جربت استخدام Thread.sleep(3000) في سلسلة UI، لكن التطبيق يتجمد ولا تظهر الرسالة. قرأت أنه لا يمكن فعل ذلك. إليك الكود الخاص بي: ```java public void onClick(View v) { try { Thread.sleep(3000); } catch (InterruptedException e) { e.printStackTrace(); } Toast.makeText(this, "مرحباً بعد 3 ثوانٍ!", Toast.LENGTH_SHORT).show(); } ``` من الواضح أن Thread.sleep يمنع السلسلة الرئيسية، ولا يتم تحديث واجهة المستخدم. كيف يمكن تنفيذ التأخير بشكل صحيح دون تجميد التطبيق؟ رأيت إشارات إلى Handler و Timer، لكنني لا أفهم كيفية تطبيقهما بشكل صحيح في هذا السيناريو البسيط. سأكون ممتناً لمثال مفصل مع شرح. <<>>

استخدام Handler للتنفيذ المؤجل

المشكلة في الكود الخاص بك هي حظر