رسالة تحذير مع وجهات نظر مفصلة؟
-
22-09-2019 - |
سؤال
هل يبدو الرمز الخاص بي صحيحًا؟ أحاول تحميل البيانات في عرض الجدول الخاص بي وعرض فرعي مفصل. طاولتي تعمل بشكل جيد ، لكن البيانات لن يتم تحميلها في عرضي الفرعي
يظهر التحذير تحت هذا الخط
nextController.dataItem = [data objectAtIndex:indexPath];
هنا هو بلدي rootviewController.M
// Configure the data for the cell.
NSDictionary *dataItem = [data objectAtIndex:indexPath.row];
cell.icon = [UIImage imageNamed:[dataItem objectForKey:@"Icon"]];
cell.publisher = [dataItem objectForKey:@"Publisher"];
cell.name = [dataItem objectForKey:@"Name"];
cell.accessoryType = UITableViewCellAccessoryDisclosureIndicator;
return cell;
}
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
NextViewController *nextController = [[NextViewController alloc] initWithNibName:@"NextView" bundle:nil];
nextController.dataItem = [data objectAtIndex:indexPath];
[self.navigationController pushViewController:nextController animated:YES];
[nextController release];
}
و My NextViewController.h
#import <UIKit/UIKit.h>
@interface NextViewController : UIViewController
{
UILabel *nameLabel;
UIImageView *iconView;
NSDictionary *dataItem;
}
@property (nonatomic, retain) IBOutlet UILabel *nameLabel;
@property (nonatomic, retain) IBOutlet UIImageView *iconView;
@property (nonatomic, retain) NSDictionary *dataItem;
@end
يتم تحميله ولكن أحصل على التحذير التالي:
"تحذير: تمرير الوسيطة 1 من" ObjectAtIndex: "يصنع عدد صحيح من المؤشر بدون طاقم
يقول تصحيح الأخطاء
إنهاء التطبيق بسبب الاستثناء غير المطلوب "nsrangeException" ، السبب:
أيه أفكار؟
المحلول
ما قاله Yannick - "يصنع عدد صحيح من المؤشر بدون طاقم" يعني أنك تستخدم عنوان كائن Nsindexpath (الذي يعد أكثر من عدد الصفوف على طاولتك ، تخيل أن المؤشر يشير إلى 0x03030000 أو شيء من هذا القبيل ) كرقم الصف وليس حقل الصف للكائن.
لا تنتمي إلى StackOverflow