Intereting Posts
В UIAlertView пытается просмотреть два текстовых поля. Его отображение границ ошибок массива текстовых полей iOS7 Фильтр NSMutableArray, содержащий список сообщений Можно ли изменить тип класса объекта с другим классом? Подвижности анимированного UIView не сохраняют свои ограничения во время анимации Использование CINoiseReduction – получить пустое изображение? Каков оптимальный способ баланса между HTTP-запросом (Payload) и загрузкой (обработкой) сервера? pow с длинными номерами в объективе c Кусок, казалось бы, невинного быстрого кода, требующего много времени для компиляции. Ошибка? Цель c Как конвертировать UIImage в NSUrl Группа соответствия Regexp, не работающая на объективе-c Как заставить iPad использовать изображения с высоким разрешением @ 2x.png в режиме «2x» Справка с MapKit три аннотации с тремя различными цветами контактов Показывать трафик, например, в приложении «Карты» из iphone с помощью MKMapView Как заставить NSFetchedResultsController возвращать больше разделов? webVIew.request.URL в didFailLoadWithError: это предыдущий URL, а не неудачный URL-адрес

Сбой просмотра таблицы при нажатии на ячейку TableView

Когда я нажимаю на ячейку, я получаю сбой (приложение закрывается в iOS-симуляторе). Код ошибки:

"EXC_BAD_ACCESS (код = 1, адрес = 0x310cc493)

Вот код:

// .h #import <UIKit/UIKit.h> @interface ChecklistsViewController : UITableViewController @end // .m #import "ChecklistsViewController.h" @interface ChecklistsViewController () @end @implementation ChecklistsViewController - (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup after loading the view, typically from a nib. } - (void)viewDidUnload { [super viewDidUnload]; // Release any retained subviews of the main view. } - (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation { return (interfaceOrientation == UIInterfaceOrientationPortrait); } - (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section { return 100; } - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath { UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"ChecklistItem"]; UILabel *label = (UILabel *)[cell viewWithTag:1000]; if (indexPath.row % 5 == 0) { label.text = @"Walk the dog"; } else if (indexPath.row % 5 == 1) { label.text = @"Brush my teeth"; } else if (indexPath.row % 5 == 2) { label.text = @"Learn iOS development"; } else if (indexPath.row % 5 == 3) { label.text = @"Soccer practice"; } else if (indexPath.row % 5 == 4) label.text = @"Eat ice cream"; return cell; } - tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath { [tableView deselectRowAtIndexPath:indexPath animated:YES]; } // Control reaches end of non-function @end 

В вашем примере вы не выделяете UITableViewCell если ни один из них не был удален. Вам нужно сделать что-то вроде этого:

 UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"ChecklistItem"]; if( cell == nil ) { cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleValue1 reuseIdentifier:@"ChecklistItem"] autorelease]; // whatever additional initialization ... } 
 - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{ static NSString *CellIdentifier = @"Cell"; UItableViewCell *cell = (UITableViewCell *) [tableView dequeueReusableCellWithIdentifier:CellIdentifier]; if (cell == nil) { cell = [[UItableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier]; } //write your code here return cell; } 

Вы должны выделить UITableViewCell в tableView: cellForRowAtIndexPath:

Ваш метод должен выглядеть следующим образом:

 - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{ static NSString *CellIdentifier = @"Cell"; UItableViewCell *cell = (UITableViewCell *) [tableView dequeueReusableCellWithIdentifier:CellIdentifier]; if (cell == nil) { cell = [[UItableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier]; } //INSERT YOUR CODE }