Ich habe diese Frage in der restkit google group gestellt, aber jetzt erkenne ich, dass es möglicherweise ein breiteres Problem ist und nicht RK-spezifisch.Unbekannter Selektor an Instanz gesendet - UITableView und Restkit LoadObjects Optionen
Ich habe in diesem ein paar Stunden im Kreis gewesen. Ich versuche, ein UITableView mit Daten zu füllen, die von einem Webservice abgerufen und in Objekten gespeichert wurden, die das RestKits-Objekt-Mapping verwenden. Den Service zu treffen, alle Objekte zu speichern funktioniert wunderbar.
Das Problem ist, wenn ich versuche, Daten für die Tabelle neu zu laden. Ich bekomme diesen Fehler -
'NSInvalidArgumentException', reason: '-[CoursesModel text]: unrecognized selector sent to instance and then app shuts down and
takes me here:
@autoreleasepool {
return UIApplicationMain(argc, argv, nil,
NSStringFromClass([RoundShoutAppDelegate class]));
}
Thread 1: signal SIGABRT
CoursesModel ist das Modell, das ich eingerichtet habe. Wenn ich den Delegaten des Tableview nicht als Klasse (die ich weiß, dass ich muss) angeben, dann laden die Kurse perfekt in der Tabellenansicht. Aber ich werde einen Fehler bekommen, wenn ich versuche, auf eine der Zellen (didSelectRowAtIndexPath) zu klicken. Konzentriere mich also auf die Tatsache, dass ich einen Delegaten angeben muss, weiß ich, dass etwas wirklich durcheinander ist und ich kann es nicht herausfinden der zugehörigen Code.
ich etwas gehe davon losgelassen wird, wenn es nicht soll, aber in den _courses Arraydaten sind. ein ARC-Projekt durch die Art und Weise diese ist.
Hier einige, aber wenn Sie müssen mehr lassen Sie mich wissen. Wenn jemand irgendwelche Informationen überhaupt hat, um mich in die richtige Richtung zu zeigen, das würde fantastisch sein! Danke für Ihre Hilfe!
CoursesModel.h
@interface CoursesModel : NSObject {
NSNumber* _courseID;
NSString* _courseName;
NSString* _city;
NSString* _state;
NSNumber* _distance;
}
@property (nonatomic, retain) NSNumber* courseID;
@property (nonatomic, retain) NSString* courseName;
@property (nonatomic, retain) NSString* city;
@property (nonatomic, retain) NSString* state;
@property (nonatomic, retain) NSNumber* distance;
@end
MainViewController.m
//Most of the code ommited for your sanity
// All good up to this point
- (void)objectLoader:(RKObjectLoader*)objectLoader didLoadObjects:
(NSArray*)objects {
//NSLog(@"Loaded courses %@", objects);
_courses = objects;
// There is data in _courses.
NSLog(@"Loaded courses in array %@", _courses);
[coursesTableView reloadData];
Delegatmethoden:
-(CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath { CGSize size = [[[_courses objectAtIndex:indexPath.row] text] sizeWithFont:[UIFont systemFontOfSize:14] constrainedToSize:CGSizeMake(300, 9000)];
return size.height + 10;
}
etwas ruft die Methode namens -text, post diese Methode, wenn es existiert, oder der Aufrufer. – CodaFi
Soweit ich in meinem Code sagen kann, ist hier der einzige Ort, wo "Text" direkt referenziert wird - (CGFloat) tableView: (UITableView *) tableView heightForRowAtIndexPath: (NSIndexPath *) indexPath { \t CGSize size = [[[ _courses objectAtIndex: indexPath.row] Text] sizeWithFont: [UIFont SystemFontOfSize: 14] ConstrainedToSize: CGSizeMake (300, 9000)]; \t return size.height + 10; } --- Allerdings habe ich das auskommentiert und 50 zurückgegeben, um zu testen und der Fehler ist immer noch da. also rate ich, dass es nicht –
@CodaFi ist - Danke für die Suche in das für mich. Lassen Sie es mich wissen, wenn Sie mehr Code benötigen. Ich nehme an, dass Code-Snippet nicht die "Text" -Referenz ist, die Sie suchen, also bin ich glücklich, an anderer Stelle zu graben. Danke noch einmal! –