iPad Анимация контроллера модального вида из ячейки таблицы
Поэтому я создаю приложение для iPad, которое отображает изображения в UITableView, и когда при выборе строки / изображения выбирается другой контроллер представления, который воспроизводит видео в полноэкранном режиме. Это все работает правильно, но я хочу анимировать переход от исходного размера изображения в таблице к полноэкранному видео. Это видео показывает, что я хочу примерно за 1 секунду в http://www.apple.com/ipad/videos/. Так как бы получить кадр выбранной ячейки? И как бы я перевести вид из рамки ячейки на полный экран?
Вот как я сейчас делаю переход:
- (void) tableView: (UITableView *) tableView didSelectRowAtIndexPath: (NSIndexPath *) indexPath
{
if (indexPath.row == 0)
{
VideoViewController * video1 = [[VideoViewController alloc] init];
UINavigationController *navController = [[UINavigationController alloc] initWithRootViewController:video1];
navController.modalTransitionStyle = UIModalTransitionStyleCrossDissolve;
navController.modalPresentationStyle = UIModalPresentationFullScreen;
navController.navigationBarHidden = YES;
[self presentModalViewController:navController animated:YES];
}
}
1 ответ
Существует проект с открытым исходным кодом под названием UAModalPanel, который делает что-то очень похожее на то, чего вы пытаетесь достичь. Вам нужно получить представление о ячейке, вызвав метод UITableView:
- (UITableViewCell *)cellForRowAtIndexPath:(NSIndexPath *)indexPath
Затем вам нужно преобразовать центральную точку ячейки в координатную плоскость суперпредставления, используя:
- (CGPoint)convertPoint:(CGPoint)point toView:(UIView *)view;
Затем вы можете передать эту центральную точку на панель, чтобы показать оттуда.
полное раскрытие: я поддерживаю проект.