تريد إزالة عنصر مجموعة محدد مع زر إزالة على هذا العرض

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

سؤال

لدي عنصر عرض مجموعة وعرض النموذج الأولي. ضمن عرض النموذج الأولي ، لدي زر X صغير. أريد هذا الزر لإزالة عنصر عرض المجموعة الدقيق الذي هو أعلى.

يمكنني إزالة عنصر محدد إذا قمت بالنقر فوق المساحة المحيطة بالزر X ، ولكن إذا ذهبت مباشرة إلى النقر فوق الزر قبل النقر فوق العنصر ، فسيتم مسح العنصر المحدد الأخير فقط.

أفكار؟

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

المحلول

حسنًا ، يجب أن يكون هذا ممتعًا!

الخطوة الأولى: تغيير توقيع الطريقة removeQuartzPlayer ان نكون:

-(void)removeQuartzPlayer:(id)aPlayer;

أين aPlayer سيكون اللاعب الذي تريد إزالته. قم بتغيير التنفيذ لتبدو شيئًا كهذا:

[quartzPlayerArrayController removeObject:aPlayer];

أين quartzPlayerArrayController سيتم استبداله باسم المخرج إلى NSArrayController الذي يرتبط به عرض المجموعة. سأثق في أنه يمكنك معرفة كيفية إنشاء Iboutlet لها ، إذا لم يكن لديك بالفعل واحدة.

خطوة واحدة نقطة واحدة: قم بإزالة الاتصال بين الزر و removeQuartzPlayer الطريقة في IB.

الخطوة الثانية: قم بالتبديل إلى جزء الروابط لمفتش IB. حدد الربط "الهدف" وجعله يبدو مثل هذا:

IB Bindings pane 1

حيث سيتم ضبط المنبثقة "وحدة التحكم" على أي كائن يشير إلى وحدة التحكم الخاصة بك.

الخطوة الثالثة: حدد ربط "الوسيطة" وجعله يبدو مثل هذا:

IB Bindings pane 2

حيث المنبثقة "Collection View Item" ... تحصل على الفكرة.

الخطوة الرابعة: استمتع بزرك الجديد ، الذي تم إحضاره إليك بواسطة سحر روابط الكاكاو (المظلم)!

إخلاء المسئولية: لم أختبر هذا بالفعل ، لكن بما أن لدي زرًا يقوم بشيء مماثل ، يجب أن يعمل. التعليق بعيدًا إذا كنت قد شد شيئًا ما.
بيلي

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