iOS uygulamalarında, UITableView#dequeueReusableCellWithIdentifier
'u kullanmadan önce nib dosyalarını tablo görünümümüze kaydetmeliyiz.Yeniden kullanım tanımlayıcısının bir UITableView ile kaydedilmiş olup olmadığını nasıl kontrol edebilirim?
Örnek:
static NSString *myReuseIdentifier = @"MyReuseIdentifier";
UINib *cellNib = [UINib nibWithNibName:myReuseIdentifier bundle:nil];
[self.tableView registerNib:cellNib forCellReuseIdentifier:myReuseIdentifier];
bir Nib zaten bir UITableView kayıtlı olup olmadığını kontrol etmek için bir yolu var mı?
Uygulamamdaki çeşitli denetleyiciler arasında çeşitli tablolarda kullandığım özel bir hücrem var. Bazı kodları makroya taşımak istiyorum. Hücre yeniden kullanıma hazır değilse niyetinde ne bunun ise ancak
-dequeueReusableCellWithIdentifier:
döner nil
-(CustomCell *)customCell:(UITableView *)tableView
{
static NSString *reuseIdentifier = @"MyReuseIdentifier";
if (![table hasAlreadyRegisteredNib:reuseIdentifier]){
UINib *cellNib = [UINib nibWithNibName:reuseIdentifier bundle:nil];
[self.tableView registerNib:cellNib forCellReuseIdentifier:reuseIdentifier];
}
CustomCell *cell = [tableView dequeueReusableCellWithIdentifier:reuseIdentifier];
return cell;
}
Neden nib'nizi viewDidLoad yöntemine kaydetmiyorsunuz? – JiaYow
Çünkü bunu birkaç denetleyicide paylaşılan bir makronun içine yapıştırmak istiyorum – bodacious
Ancak çeşitli tablolarınız olduğundan, her bir tablo için nib kaydetmeniz gerekir. –