Jeg leser en egendefinert tabellcelle i tableView:cellForRowAtIndexPath:fra en spiss fil. Dette fungerer bra for mitt formål, bortsett fra det er ganske treg.
Nå, jeg vet den riktige tingen å gjøre på lang sikt er å skape cellen helt i koden og bruke en enkelt visning, og så videre. Men dette er en prototype, og jeg ønsker ikke å legge så mye arbeid i det.
For nå, vil jeg være glad hvis jeg leste blyet bare én gang i UIViewControllerunderklassen, så tableView:cellForRowAtIndexPath:laget kopier av den. Min antakelse er at kopiering ville være raskere enn å lese blyet.
Her er hva jeg bruker til å laste blyet, som jeg kaller fra viewDidLoad:(og retainetter)
-(id)loadFromNamed:(NSString*)name {
NSArray *objectsInNib = [[NSBundle mainBundle] loadNibNamed:name
owner:self
options:nil];
assert( objectsInNib.count == 1 );
return [objectsInNib objectAtIndex:0];
}
Alt er bra så langt. Men spørsmålet er: Hvordan kan jeg kopiere denne over og over det? Er det enda mulig?
Jeg prøvde [_cachedObject copy]og [_cachedObject mutableCopy]men UITableViewCellstøtter ikke heller kopi protokollen.
Hvis jeg må, kan jeg bare fortelle dem å ignorere hastigheten før jeg er forberedt på å fjerne blyet helt, men jeg vil heller få det går litt fortere hvis det er en lavthengende frukt her.
Noen ideer?













