سؤال

لقد كنت أبحث عن طرق لإعداد ملف UICollectionView لتطبيق iOS.يعرض Google عددًا قليلاً فقط من المدونات التي تحتوي على منشورات حول ماذا ليس كيف إنها تعمل.ثم بالطبع، هناك وثائق Apple التي تعتبر مفيدة، ولكنها لا توفر قدرًا كبيرًا من المعلومات التي أود أن أكون قادرًا على إعدادها UICollectionView.

كيف يمكن إعداد أ UICollectionView?

هل كانت مفيدة؟

المحلول

ال الطبقة متطابقة تقريبًا مع فصل.يتشاركون في العديد من نفس الأساليب والوظائف.وإذا كانت الطرق/الوظائف مختلفة، في معظم الأحيان يكون الأمر مجرد مسألة تبديل "الصف" بـ "الخلية" والعكس صحيح.ومع ذلك، هناك بعض الطرق غير الموجودة في UICollectionView والتي يتم تنفيذها على UITableView.أولاً، سأشرح كيفية إعداد UICollectionView:

  1. ابدأ بإضافة UICollectionView إلى ViewController الحالي، أو إنشاء UICollectionViewController جديد.لا تختلف الخطوات كثيرًا بالنسبة للعرض ووحدة التحكم.
  2. إذا كنت تستخدم طريقة العرض وليس ViewController، فتأكد من أن مندوب و مصدر البيانات CollectionView هي وحدة التحكم في العرض الموجودة عليه.تأكد أيضًا من إضافة Delegate وDataSource إلى ملف الرأس الخاص بك: <UICollectionViewDataSource, UICollectionViewDelegate>

  3. بعد ذلك، تأكد من تضمين هذه الطرق الثلاثة في فئة وحدة التحكم في العرض الخاصة بك:

    -(NSInteger)numberOfSectionsInCollectionView:(UICollectionView *)collectionView
    
    -(NSInteger)collectionView:(UICollectionView *)collectionView numberOfItemsInSection:(NSInteger)section
    
    -(UICollectionViewCell *)collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath
    
  4. هذه هي الطرق المطلوبة الوحيدة.الأول يخبر المجموعة بعرض عدد الأقسام التي يجب أن تحتوي عليها.يجب أن يُرجع هذا قيمة عددية.الطريقة الثانية تحصل على عدد الخلايا في كل قسم.مرة أخرى، يجب أن يُرجع هذا قيمة عددية.تقوم الطريقة الأخيرة بملء كل خلية باستخدام البيانات المقدمة (عادةً من NSArray).يجب أن تقوم هذه الطريقة الأخيرة بإرجاع CollectionViewCell.إذا قمت بتعيين نقاط التوقف على هذه الطريقة، ستلاحظ أنه يتم استدعاؤها مرة واحدة لكل خلية محددة في numberOfItemsInSection طريقة.

توفر UICollectionViews طرقًا متقدمة للرسوم المتحركة وتسمح بإلغاء تحديد الخلايا وتحديدها (على غرار تطبيقات مثل الصفحات عندما تكون في وضع "التحرير").ومع ذلك، على حد علمي، لا توفر UCollectionViews ميزات مثل "التمرير السريع للحذف" أو نوع مؤشر الكشف.

تتيح لك UICollectionViews أيضًا إنشاء خلايا مخصصة باستخدام (الملقب ب ) ، وهذا يسمح ببعض الواجهات الفريدة والمتقدمة للغاية دون الكثير من التعليمات البرمجية المعقدة.

للأسف، UICollectionView مدعوم فقط في نظام التشغيل iOS 6 والإصدارات الأحدث.هناك عدد قليل من المشاريع المتاحة مثل PSTCollectionView مما يضيف دعمًا لـ CollectionViews في نظام التشغيل iOS 4.3+، لكنني لم أكتشف كيفية استخدامها.في حالتي، عندما يتم تحميل العرض، أتحقق فقط من توفر فئة UICollectionView وإذا لم يكن كذلك، أقوم بتحميل جدول بدلاً من ذلك.

فيما يلي رابط لوثائق Apple الرسمية حول طرق عرض المجموعة.قد ترغب أيضًا في التحقق من هذا درس تعليمي.

نصائح أخرى

قمت بإنشاء خطوة بخطوة تعليمي لإعداد UicolletionViews مع تخطيطات مخصصةوبعدنأمل أن يساعد بعض الناس على التعرف على API.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top