سؤال

لدي صفيف أحاول التحقق من Wether أو لا يوجد INDEXPATH (.ROW).

أستخدم هذا الرمز:

if ([array containsObject:[NSNumber numberWithInt:indexPath.row]]){
    NSLog(@"Yep, it exists in there.");
}

يتكون الصفيف من الأرقام 3 و 8 و 2. يقوم مسار الفهرس بتحميل الأرقام من 0 إلى 8 في حلقة.

هل يمكن لأي شخص أن يرى لماذا لا يعمل هذا؟

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

المحلول

نظرًا لأن الصفيف يحتوي على سلاسل ، يجب عليك المقارنة مع الأوتار. لإنشاء سلسلة رقمية ، استخدم -stringWithFormat:. لذا:

if ([array containsObject:[NSString stringWithFormat:@"%d", indexPath.row]]){
    NSLog(@"Yep, it exists in there.");
}

الحل الأفضل هو تخزين NSNumber في الصفيف.

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