在iOS 8上使用自定义UI动画显示和解除共享扩展

Alv*_*nco 14 xcode objective-c ios ios8 ios-app-extension

我正在开发一个带有自定义UI的iOS 8共享扩展,但它没有动画,我该怎么办呢?这是一个常规的UIViewController.

此外,它出现在iPad的全屏幕上,我希望它是一个模态视图控制器,它出现在屏幕的中央并且不适合它,我该怎么做?

问候.

phi*_*uuu 26

这是迄今为止我发现的最清晰的解决方案,用于动画我的自定义视图控制器!

动画IN:

- (void)viewWillAppear:(BOOL)animated
{
    [super viewWillAppear:animated];

    self.view.transform = CGAffineTransformMakeTranslation(0, self.view.frame.size.height);
    [UIView animateWithDuration:0.25 animations:^
    {
        self.view.transform = CGAffineTransformIdentity;
    }];
}
Run Code Online (Sandbox Code Playgroud)

解雇:

- (void)dismiss
{
    [UIView animateWithDuration:0.20 animations:^
    {
        self.view.transform = CGAffineTransformMakeTranslation(0, self.view.frame.size.height);
    } 
    completion:^(BOOL finished) 
    {
        [self.extensionContext completeRequestReturningItems:nil completionHandler:nil];
    }];
}
Run Code Online (Sandbox Code Playgroud)