containerViewController | V pageViewController | | V V ViewController1 ViewController2 | V tableView (property of ViewController2)
UITableView в UIPageViewController не вызывается метод didSelectRowAtIndexPath
Здравствуйте,
У меня есть pageViewController с двумя UIViewControllers. Один из них содержит tableView. Когда мой tableView был создан в этой страницеViewController, метод didSelectRowAtIndexPath не был запущен. Но я могу справиться с «событием касания» в своей камере.
Смотрите следующий код:
// Init pageViewController
self.pageController = [[UIPageViewController alloc] initWithTransitionStyle:UIPageViewControllerTransitionStyleScroll navigationOrientation:UIPageViewControllerNavigationOrientationHorizontal options:nil];
self.pageController.view.translatesAutoresizingMaskIntoConstraints = false;
CGRect pageFrame = self.view.bounds;
pageFrame.origin.y = TOP_BAR_HEIGHT;
self.pageController.view.frame = pageFrame;
// Set pageviewControllers with my array of controllers (with ViewController1 and ViewController2)
[self.pageController setViewControllers:@[self.subViewControllers[0]]
direction:UIPageViewControllerNavigationDirectionForward
animated:NO
completion:nil];
[self addChildViewController:self.pageController];
[self.view addSubview:self.pageController.view];
[self.pageController didMoveToParentViewController:self];
Но, то, что очень странно: когда я тащу на клетке с моим пальцем, и я удалю свой палец, метод didSelect был уволен, в то время как простое касание не работает ...
У меня уже был поиск на Stackoverflow, я нашел только topic.
Он исправить свою проблему с помощью встроенного Tableview в UIViewController, но я уже реализовал свой код, как ...
EDIT: я поставил код на Github. source code
Какой объект является делегатом и источником данных в виде таблицы? – dlbuckley
делегат - ViewController2, то же самое для источника данных. Но это не проблема с tableView напрямую (он работает очень хорошо в другом контексте) – Geoffrey
Вы, возможно, реализовали метод didDEselect? У меня это было, и я искал несколько часов. – ben