منحنيات التوقيت الزنبركية والمخصصة
اضبط الحركة باستخدام النوابض والتسهيل
منحنيات التوقيت الزنبركية والمخصصة درس مجاني في SwiftUI Academy على CoddyKit. هذا هو الدرس 4 من أصل 4. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في SwiftUI Academy، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة SwiftUI Academy 4 دروس في المجموع.
بعض أجزاء هذا الدرس لم تُترجم بعد وتظهر باللغة الإنجليزية.
The Feel of Motion
How an animation accelerates and settles shapes its personality. The timing curve decides whether motion feels snappy, smooth, or bouncy.
Linear Is Constant
A linear curve moves at one steady speed start to finish. It can feel mechanical, so it suits progress bars more than UI.
.animation(.linear, value: x)Ease In and Out
The easeInOut curve starts slow, speeds up, then slows to a gentle stop, the most natural choice for most UI.
.animation(.easeInOut, value: x)Ease In vs Ease Out
Use easeIn to start gently and easeOut to stop gently, picking which end of the motion feels softer.
Meet Springs
A spring animation models real physics, overshooting slightly and settling, which feels lively and responsive.
.animation(.spring, value: x)Tune the Bounce
The bounce parameter sets how springy the motion is. Zero is smooth; higher values add a playful overshoot.
.spring(duration: 0.5, bounce: 0.3)Response and Damping
Springs can also be tuned with response for speed and damping for how quickly the bounce dies out.
.interpolatingSpring(
stiffness: 170, damping: 15)Custom Bezier Curves
For full control, timingCurve lets you define a custom bezier with your own control points and duration.
.timingCurve(0.2, 0.8, 0.2, 1,
duration: 0.5)Add a Delay
Chain .delay onto any animation to wait before it begins, perfect for staggering several elements.
.animation(.spring.delay(0.1), value: x)Repeat the Motion
Use repeatForever or repeatCount to loop an animation, ideal for pulsing dots and loading hints.
.easeInOut.repeatForever(
autoreverses: true)Speed It Up or Down
The .speed modifier scales an animation faster or slower without rewriting its curve or duration.
.animation(.default.speed(2), value: x)Quick Check
Which curve gives the most natural everyday UI motion?
Recap: Curves and Springs
You explored timing curves from linear to easeInOut, lively springs with bounce, custom beziers, delays, and repeats. Now your motion has personality. 🚀
الأسئلة الشائعة
هل درس «منحنيات التوقيت الزنبركية والمخصصة» مجاني؟
نعم — نص درس «منحنيات التوقيت الزنبركية والمخصصة» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة SwiftUI Academy، انتقل إلى CoddyKit PRO. تتضمن دورة SwiftUI Academy 4 دروس في المجموع.
ماذا ستتعلم في «منحنيات التوقيت الزنبركية والمخصصة»؟
اضبط الحركة باستخدام النوابض والتسهيل تتمرن على SwiftUI Academy مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.
هل أحتاج إلى خبرة سابقة لأبدأ SwiftUI Academy؟
لا تُشترط خبرة سابقة. SwiftUI Academy على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 4 من أصل 4.
كم من الوقت يستغرق درس «منحنيات التوقيت الزنبركية والمخصصة»؟
معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.
هل يمكنني كتابة وتشغيل أكواد في درس SwiftUI Academy هذا؟
نعم. كل درس في SwiftUI Academy يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.
جميع الدروس في هذه الدورة
- الرسوم المتحركة الضمنية
- الرسوم المتحركة الصريحة باستخدام withAnimation
- انتقالات الإدراج والإزالة
- منحنيات التوقيت الزنبركية والمخصصة