UIPopoverViewController presentModalViewController анимация - PullRequest
0 голосов
/ 19 июля 2011

Я работаю над приложением для iPad.У меня есть viewcontroller, который я хочу показать в контроллере popover.Но я также хочу добавить пользовательскую анимацию в popover при представлении в modalview.Как добавить пользовательскую анимацию в поповер при представлении и отклонении модального представления?

Ниже приведен мой код:

Myviewcontroller *myViewController = [[Myviewcontroller alloc] initWithNibName:@"Myviewcontroller" bundle:nil];
UINavigationController *navController=[[UINavigationController alloc] initWithRootViewController:myViewController];
myViewController.contentSizeForViewInPopover=CGSizeMake(900, 600);
UIPopoverViewController popOVer = [[UIPopoverController alloc]
                initWithContentViewController:navController];
 [popover presentPopoverFromRect:CGRectMake(37, 90, 950, 560) inView:self.view permittedArrowDirections:0 animated:NO];

Анимация, которую я хочу добавить в вышеупомянутый popoverViewController:

CABasicAnimation* rotationAnimation = [CABasicAnimation animationWithKeyPath:@"transform.rotation.z"];
rotationAnimation.toValue = [NSNumber numberWithFloat:(2 * M_PI) * 3]; // 3 is the number of 360 degree rotations

rotationAnimation.duration = 1.0f;
rotationAnimation.timingFunction = [CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseOut];

CABasicAnimation *scaleAnimation = [CABasicAnimation animationWithKeyPath:@"transform.scale"];
scaleAnimation.fromValue = [NSNumber numberWithFloat:0.0];
scaleAnimation.toValue = [NSNumber numberWithFloat:1.0];
scaleAnimation.duration = 1.0f;
scaleAnimation.timingFunction = [CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseOut];

CAAnimationGroup *animationGroup = [CAAnimationGroup animation];
animationGroup.duration = 1.0f;
[animationGroup setAnimations:[NSArray arrayWithObjects:rotationAnimation, scaleAnimation, nil]];

Теперь моя проблема заключается в том, как добавить эту анимацию в сам popOverViewController.Так как у Popover нет свойства view, я не могу добавить к нему анимацию.Если я добавлю анимацию в viewcontroller внутри поповера, то поповер останется на своем месте, а вид внутри него оживит, что выглядит не очень хорошо.

1 Ответ

0 голосов
/ 19 июля 2011

Не может быть сделано, поповер не является контроллером представления.

...