У меня есть табличный вид. Когда щелкнута ячейка таблицы, im захватывает определенное значение текстовой метки. В файле APIRequest.m у меня есть переменная shipmentReferenceNo
, значение которой присваивается как значение textlabel на didSelectRowAtIndexPath.Не удалось передать значения через didSelectRowAtIndexPath
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath;
{
tabBar = [self.storyboard instantiateViewControllerWithIdentifier:@"TabBarController"];
[self.navigationController pushViewController:tabBar animated:YES];
[tableView deselectRowAtIndexPath:indexPath animated:YES];
UITableViewCell *cell = [tableView cellForRowAtIndexPath:indexPath];
UILabel *label = (UILabel *)[cell viewWithTag:123123];
self.request = [[APIRequest alloc]init];
self.request.shipmentReferenceNo = label.text;
NSLog(@"hello %@", label.text);
}
Когда им пытается получить доступ к shipmentReferenceNo как следует из APIRequest.m файла следующим образом, его нулевого
NSLog(@"sd %@",self.shipmentReferenceNo);
что может быть возможной причиной этого нулевого значения, хотя я назначил его ранее в didSelectRowAtIndexPath
?
Это потому, что вы снова создаете новый экземпляр. self.request = [[APIRequest alloc] init]; Вы просто удалите его. Как вы уже объявили self.request как свойство! Также вам нужно искать self.request.shipmentReferenceNo, а не self.shipmentReferenceNo –
Я попробовал, но все же im с той же проблемой – user1241241
положил точку останова в методе didSelect и попытайтесь напечатать значение self.request в отладчике. –