У меня есть UIViewController
со столом. Строка таблицы содержит кнопки, которые вызывают действие.NSIndexPath return nil
//This is my button selector inside tableview delegate cellForRowAtIndexPath
[myBtn addTarget:self action:@selector(onButtonPress:event:)forControlEvents:UIControlEventTouchUpInside];
//This is button action
-(void)onButtonPress:(UIButton*)sender {
CGPoint buttonPosition = [sender convertPoint:CGPointZero toView:self.myTableView];
NSIndexPath *indexPath = [self.myTableView indexPathForRowAtPoint:buttonPosition];
DestinationViewController *controller = [self.storyboard instantiateViewControllerWithIdentifier:@"DestinationViewController"];
controller.args=myArgs;
[self.navigationController pushViewController:controller animated:YES];
}
//this is my back button action
- (IBAction)onBackPressed:(id)sender {
[self.navigationController popViewControllerAnimated:YES];
}
В первый раз все работает нормально, но после того, как я переходите к другому ViewController
и вернуться обратно к контроллеру Tableview, нажав кнопку назад и снова нажмите на кнопку таблицы Роу NSIndexPath
равна нулю
я попытался это indexPathForRowAtPoint returns nil only for first cell in a uitableview
спасибо за ваше предложение. Как я могу вернуться назад? Можете ли вы дать мне образец ?. потому что все мои данные в этом должны сохраняться. –
Можете ли вы показать мне код, по которому вы переходите к существующему диспетчеру просмотра, и код, с помощью которого вы показываете следующий контроллер представления – RStack
'controller.delegate = self;' добавьте эту строку в свой код – RStack