أفضل (أي) طريقة لدمج رأس قسم عرض الجدول أعلى عرض الجدول المجمع

StackOverflow https://stackoverflow.com/questions/1016102

  •  06-07-2019
  •  | 
  •  

سؤال

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

هل هناك أي طريقة لتحديد متى يكون مؤشر IndexPath.row = 0 بحيث يجب على UITableViewCell استخدام نمط الصف "الأوسط" أو شيء من هذا القبيل؟

إذا لم يكن كذلك فما هي خياراتي؟أعتقد أنه يمكنني خدش رأس القسم واستخدام الصف 0 كرأس شبه ثم دفع بيانات المصفوفة +1 لملء بقية الجدول؟أفضل عدم البدء بنفسي من الصفر...إن أمكن.

نموذج الجدول http://img35.imageshack.us/img35/8181/sampletable.png

يحرر:

يبدو "الحماقة" كما يلي:

نص بديل http://img25.imageshack.us/img25/9748/crapsection.png

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

المحلول

  1. لا تفعل ما تفعله، فهو ضد HIG

  2. حسنًا، حسنًا، سأخبرك بكيفية القيام بذلك:

سوف ترغب في القيام بعروض خلفية الخلية الخاصة بك.المجموعة الافتراضية ليست هي ما تريد.

عندما يطلب منك عرض الجدول خلية، قم بتعيين عرض الخلفية الخاص بها وطريقة عرض الخلفية المحددة على شيء يبدو مناسبًا لمكانه في عرض الجدول.

عادةً ما يعني هذا عرض UIImageView مع الصورة المناسبة، على الرغم من أنه يمكنك الانتقال هنا باستخدام عرض مخصص، ولكن هناك بعض الأخطاء.

لذلك في حالتك، ستفعل

if (indexPath.row > sectionRowCount - 1) {
    //Not the last row
    //Put in the middle background
} else {
    //Put in the end background
}

ستحتاج بعد ذلك إلى رأس قسم مخصص للجدول، ولكن هذا سهل جدًا.

في حالتك، ربما لا داعي للقلق بشأن وجود صف واحد فقط، مما يجعل الأمور أسهل.

نصائح أخرى

ونلقي نظرة على البرنامج التعليمي هنا: الكاكاو مع الحب أساسا ما تحتاجه هو 3 صور مختلفة. واحد للصف العلوي، واحد لأسفل، و3 للصفوف المتوسطة.

ويمكنك أيضا أن عدم استخدام رأس المقطع، ولكن بدلا من استخدام خلية مخصصة باعتبارها الخلية الأولى من المقطع. لذلك عندما ([الصف indexPath] == 0)، ترجع الخلية المخصصة التي هي "رأس" ومن ثم العودة الخلايا "العادية" (يقابله صف واحد) لبقية. سيكون لديك أيضا لإجراء تعديلات على وظيفة numberOfRowsInSection للعودة +1.

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