Ios Xamarin PushViewController缩放到子视图

Ios Xamarin PushViewController缩放到子视图,ios,ios7,xamarin.ios,xamarin,Ios,Ios7,Xamarin.ios,Xamarin,使用Xamarin.iOS开发iPhone应用程序。 我想实现与iPhone iOS7主屏幕相同的动画,在主屏幕上放大应用程序。我在收藏视图中有一组图片。每张图片对应一个人,您可以点击该图片,进入下一个视图控制器,从中获取有关此人的信息 现在我正在从下到上制作动画-是否有可能实现我想要的动画类型 public override void ItemSelected (UICollectionView collectionView, NSIndexPath indexPath)

使用Xamarin.iOS开发iPhone应用程序。 我想实现与iPhone iOS7主屏幕相同的动画,在主屏幕上放大应用程序。我在收藏视图中有一组图片。每张图片对应一个人,您可以点击该图片,进入下一个视图控制器,从中获取有关此人的信息

现在我正在从下到上制作动画-是否有可能实现我想要的动画类型

public override void ItemSelected (UICollectionView collectionView, NSIndexPath indexPath)
            {
                UIStoryboard MainStoryboard = UIStoryboard.FromName ("MainStoryboard_iPhone",null);
                PersonDetailViewController personDetailViewController = MainStoryboard.InstantiateViewController ("PersonDetailViewController") as PersonDetailViewController;
                personDetailViewController.personID =  _viewController.Category.Persons [indexPath.Row].Id;
                this._viewController.NavigationController.PushViewController (personDetailViewController,false);
                var animation = CABasicAnimation.FromKeyPath("transform.translation.y");
                animation.Duration = 0.3f;
                animation.From = NSNumber.FromFloat(this._viewController.View.Frame.Height);
                animation.To = NSNumber.FromFloat(0f);
                this._viewController.NavigationController.View.Layer.AddAnimation(animation, "animate");
                this._viewController.NavigationController.View.Layer.AnimationForKey("animate");

            }
退出缩放转换-希望您可以从Objective-C进行转换。以下是动画部分:

- (void)animateTransition:(id<UIViewControllerContextTransitioning>)transitionContext
{
    UIViewController* toViewController = [transitionContext viewControllerForKey:UITransitionContextToViewControllerKey];
    UIViewController* fromViewController = [transitionContext viewControllerForKey:UITransitionContextFromViewControllerKey];
    [[transitionContext containerView] addSubview:toViewController.view];
    toViewController.view.alpha = 0;

    [UIView animateWithDuration:[self transitionDuration:transitionContext] animations:^{
        fromViewController.view.transform = CGAffineTransformMakeScale(0.1, 0.1);
        toViewController.view.alpha = 1;
    } completion:^(BOOL finished) {
        fromViewController.view.transform = CGAffineTransformIdentity;
        [transitionContext completeTransition:![transitionContext transitionWasCancelled]];

    }];

}
-(void)animateTransfion:(id)transitionContext
{
UIViewController*toViewController=[transitionContext ViewControllerWorky:UITransitionContextToViewControllerKey];
UIViewController*fromViewController=[transitionContext ViewControllerWorky:UITransitionContextFromViewControllerKey];
[[transitionContext containerView]添加子视图:toViewController.view];
toViewController.view.alpha=0;
[UIView animateWithDuration:[self-transitionDuration:transitionContext]动画:^{
fromViewController.view.transform=CGAffineTransformMakeScale(0.1,0.1);
toViewController.view.alpha=1;
}完成:^(布尔完成){
fromViewController.view.transform=CGAffineTransformity;
[transitionContext completeTransition:![transitionContext transitionWasCancelled];
}];
}

您可以在iOS7上使用自定义视图控制器转换。看这里: