Intereting Posts
Как оживить простую волну, созданную в функции drawRect в iOS iOS Monotouch – Как установить Frame перед ViewDidLoad ()? Перемещение UIView при нажатии TextField Как управлять конфликтами зависимостей между каркасом, который я создаю, и основным приложением? Как запросить ближайших пользователей в Firebase с помощью Swift? Сохранение словаря значений ключа в Firebase с использованием Swift Я получаю ошибку при использовании SecKeyEncrypt с Secure Enclave Печать модели CoreData рекурсивно без ошибок Невозможно сгенерировать openaplr.framework в mac с помощью библиотеки OpenALPR Цель-C – Как работает KVC под капотом? Можно ли использовать несколько строк текста в кнопке UIAlertView? Программно добавление переключателя в исключение scrollview исключает Расширение Swift Share, ALAsset – ноль Основная проблема обработки резьбы Настройка Происхождения анимации в центр обзора

Пользовательская ячейка не может отображаться в виде таблицы в ios 6

#import "MasterViewController.h" #import "DetailViewController.h" @interface MasterViewController () @end @implementation MasterViewController - (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil { self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil]; if (self) { self.title = NSLocalizedString(@"Master", @"Master"); if ([[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPad) { self.clearsSelectionOnViewWillAppear = NO; self.contentSizeForViewInPopover = CGSizeMake(320.0, 600.0); } } return self; } - (void)dealloc { [_detailViewController release]; [super dealloc]; } - (void)viewDidLoad { [super viewDidLoad]; } - (void)didReceiveMemoryWarning { [super didReceiveMemoryWarning]; // Dispose of any resources that can be recreated. } #pragma mark - Table View - (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView { return 1; } - (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section { return 5; } -(CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath{ return 100.0; } // Customize the appearance of table view cells. - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath { static NSString *CellIdentifier = @"CustomCell"; CustomCell *cell = (CustomCell *)[tableView dequeueReusableCellWithIdentifier: CellIdentifier]; if (cell == nil) { cell = [[[CustomCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier] autorelease]; } cell.cellDate.text=@"date"; cell.cellDescription.text =@"Description"; cell.cellImageview.image = [UIImage imageNamed:@"facebook.png"]; cell.cellTitle.text = @"Title"; return cell; } - (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath { if ([[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPhone) { if (!self.detailViewController) { self.detailViewController = [[[DetailViewController alloc] initWithNibName:@"DetailViewController_iPhone" bundle:nil] autorelease]; } [self.navigationController pushViewController:self.detailViewController animated:YES]; } else { } } @end 

файл .h

  #import <UIKit/UIKit.h> #import "CustomCell.h" #import "XMLStringFile.h" @class DetailViewController; @interface MasterViewController : UITableViewController{ } @property (strong, nonatomic) DetailViewController *detailViewController; @property(strong,nonatomic)CustomCell *customCell; @end 

CustomCell.h


  #import <UIKit/UIKit.h> @interface CustomCell : UITableViewCell{ IBOutlet UIImageView *cellImageview; IBOutlet UILabel *cellTitle; IBOutlet UILabel *cellDescription; IBOutlet UILabel *cellDate; } @property (retain, nonatomic) IBOutlet UIImageView *cellImageview; @property (retain, nonatomic) IBOutlet UILabel *cellTitle; @property (retain, nonatomic) IBOutlet UILabel *cellDescription; @property (retain, nonatomic) IBOutlet UILabel *cellDate; @end 

CustomCell.m


  #import "CustomCell.h" @implementation CustomCell @synthesize cellDate; @synthesize cellDescription; @synthesize cellImageview; @synthesize cellTitle; - (id)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier { self = [super initWithStyle:style reuseIdentifier:reuseIdentifier]; if (self) { // Initialization code } return self; } - (void)setSelected:(BOOL)selected animated:(BOOL)animated { [super setSelected:selected animated:animated]; // Configure the view for the selected state } - (void)dealloc { [super dealloc]; } @end 

Это мой оба класса. Проблема заключается в данных таблицы в пользовательском поле can not Display onlt white screen. Здесь я работаю в ios с шаблоном просмотра masterdetails .. здесь я также добавил m файл в компиляционном источнике Customcell.xib size is 300X100 Здесь мой вывод Мой файл xib, как показано ниже Это мой CustomCell.xib

Это мой выходной экран

помогите мне решить проблему

  if(cell == nil) { NSArray *outlets = [NSArray arrayWithArray:[[NSBundle mainBundle] loadNibNamed:@"CustomCell" owner:self options:nil]]; for(id obj in outlets) { if([obj isKindOfClass:[UITableViewCell class]]) { cell = (CustomCell *)obj; } } } 

Если ваш CustomCell через XIB тогда напишите этот код, где ваша ячейка равна nil .

РЕДАКТИРОВАТЬ:-
Это может быть причиной – я думаю, вы не изменили имя класса CustomCell . Следуй этим шагам –

  1. Возьмите XIB с именем CustomCell.xib затем удалите его представление.
  2. Возьмите UITableViewCell и установите его высоту и структуру в соответствии с вами.
  3. Выберите File's Owner и измените его имя класса на CustomCell То же самое происходит с UITableViewCell … выберите его и измените его имя класса на CustomCell .
  4. Теперь подключите все subView subView .

Примечание. – Выберите IBOutLets , щелкнув правой кнопкой мыши на UITableViewCell не File's Owner .

Сделайте следующее в viewDidLoad

 - (void)viewDidLoad { [super viewDidLoad]; UINib *nib = [UINib nibWithNibName:@"Customcell" bundle:nil]; [[self tableView] registerNib:nib forCellReuseIdentifier:@"CustomCell"]; } 

Если ячейка спроектирована в наконечнике, вам необходимо загрузить ячейку из наконечника.

Это фактически поддерживает UIKit с iOS 5

Что вам нужно сделать, это зарегистрировать свой банд с помощью UITableView .

 - (void)viewDidLoad { [super viewDidLoad]; [self.tableView registerNib:[UINib nibWithNibName:@"Customcell" bundle:nil] forCellReuseIdentifier:@"CustomCell"]; //... } 

Теперь ваш tableView:cellForRowAtIndexPath: просто нужно выглядеть так

 - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath { static NSString *CellIdentifier = @"CustomCell"; CustomCell *cell = (id)[tableView dequeueReusableCellWithIdentifier: CellIdentifier]; cell.cellDate.text = @"date"; cell.cellDescription.text = @"Description"; cell.cellImageview.image = [UIImage imageNamed:@"facebook.png"]; cell.cellTitle.text = @"Title"; return cell; } 

NB

Не забудьте указать CustomCell в качестве идентификатора повторного использования в xib

Некоторые другие наблюдения

  • Действительно, вы должны использовать ARC для нового проекта.
  • @synthesize подразумевается, поэтому в большинстве случаев не требуется
  • Вероятно, это плохая идея: #import "CustomCell.h" в MasterViewController.h . Вы должны перенести это в .m и использовать декларацию forward в .h вместо – @class CustomCell;
  • Вам также не нужно объявлять поддержку ivars для свойств, поскольку они также будут сгенерированы компилятором, например, вам не нужно объявлять следующее

     @interface CustomCell : UITableViewCell { IBOutlet UIImageView *cellImageview; IBOutlet UILabel *cellTitle; IBOutlet UILabel *cellDescription; IBOutlet UILabel *cellDate; }