Kivy: تطوير واجهات المستخدم عبر المنصات باستخدام Python

مدرب بايثون أونلاين للمبتدئين

تعلم Python بسهولة دون إرهاق نظري. حل مهام عملية مع التحقق التلقائي واكتب الكود مباشرة في المتصفح.

ابدأ الدورة

مقدمة

Kivy هو إطار عمل مفتوح المصدر وقوي لبناء واجهات المستخدم الرسومية والتطبيقات متعددة المنصات باستخدام لغة Python. يدعم Kivy أنظمة Android و iOS و Windows و Linux و macOS، مما يجعله خيارًا ممتازًا لتطوير تطبيقات الجوال والحاسوب بكود موحد.

توفر المكتبة أدوات لبناء واجهات متجاوبة، وإدارة الإدخال من لوحة المفاتيح والفأرة وأجهزة اللمس واللمس المتعدد، بالإضافة إلى لغة الترميز الخاصة بها KV لفصل المنطق عن واجهة المستخدم. يستخدم Kivy مكتبة OpenGL للعرض، مما يضمن أداءً عاليًا ورسومًا متحركة سلسة.

ما هو Kivy ومميزاته

المزايا الرئيسية للإطار

يتميز Kivy عن غيره من مكتبات واجهات المستخدم بعدة خصائص مهمة. الإطار مكتوب بالكامل بلغة Python مع استخدام Cython للمكونات الحيوية، مما يضمن أداءً عاليًا.

تشمل المزايا الرئيسية:

  • دعم أصلي لللمس المتعدد والإيماءات
  • تسريع الأجهزة عبر OpenGL ES 2.0
  • توسيع تلقائي للواجهة ليناسب دقات الشاشات المختلفة
  • هندسة معيارية قابلة للتوسيع
  • دعم مدمج للرسوم المتحركة والتأثيرات

هندسة الإطار

بني Kivy على هندسة معيارية حيث يمكن استبدال أو توسيع كل مكون. يتكون نواة الإطار من عدة وحدات رئيسية: Clock لإدارة الوقت، Window للتعامل مع نافذة التطبيق، Factory لإنشاء الكائنات، و Cache لتحسين الأداء.

التثبيت والإعداد

التثبيت الأساسي لـ Kivy

pip install kivy

لتطوير تطبيقات Android، ستحتاج إلى أداة إضافية تسمى buildozer:

pip install buildozer

تثبيت التبعيات لأنظمة مختلفة

Windows

pip install kivy[base,media]

Linux (Ubuntu/Debian)

sudo apt-get install python3-kivy

macOS

brew install pkg-config sdl2 sdl2_image sdl2_ttf sdl2_mixer gstreamer
pip install kivy

التحقق من صحة التثبيت

بعد التثبيت، يمكنك التحقق من العمل باستخدام اختبار بسيط:

import kivy
print(kivy.__version__)

إنشاء أول تطبيق

أبسط تطبيق Kivy

from kivy.app import App
from kivy.uix.button import Button

class MyApp(App):
    def build(self):
        return Button(text="اضغط علي")

MyApp().run()

تشغيل هذا الكود سيفتح نافذة تحتوي على زر يملأ كامل مساحة النافذة.

هيكل تطبيق Kivy

كل تطبيق في Kivy له الهيكل الأساسي التالي:

  • App — الفئة الرئيسية التي تشغل وتدير التطبيق
  • Widget — العنصر الأساسي للواجهة الذي ترث منه جميع المكونات
  • Layout — حاويات لتنظيم العناصر (BoxLayout، GridLayout وغيرها)
  • Screen — شاشات منفصلة للتطبيق للتنقل بينها

دورة حياة التطبيق

يمر تطبيق Kivy بعدة مراحل:

  1. تهيئة فئة App
  2. استدعاء طريقة build() لإنشاء الواجهة
  3. بدء حلقة الأحداث الرئيسية
  4. معالجة إدخال المستخدم
  5. إنهاء التطبيق عند الإغلاق

المكونات والعناصر الأساسية

عناصر واجهة المستخدم الأساسية

Label — عرض النص

from kivy.uix.label import Label

label = Label(                    

توصيات