• 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏吧

UIActivityViewController的“更多”按钮打破方向设置

IOS 来源:acyc 3次浏览

我有一个UIViewController只支持肖像模式。但是当我提出一个UIActivityViewController时,取向行为很奇怪。UIActivityViewController的“更多”按钮打破方向设置

当出现UIActivityViewController时,我可以将设备旋转到任何方向而不会旋转共享表。这是对的。 但是,当分享表呈现时,我将设备水平放置,然后单击“更多”按钮,“更多”设置页面将呈水平状态。然后,当我完成设置并回到分享表时,分享表连同我的展示UIViewController变得水平。这打破了我的布局。

我试过把UIActivityViewController放在UINavigationController中,但这不会改变点击“更多”按钮后的行为。

有没有办法解决这个问题?

===========解决方案如下:

你应该做另一个uinavigationcontroller并从那里呈现uiactivityviewcontroller。在这个代码中_image是一个UIImage,你可以分享。 BlankViewController只是您可以在IB中创建的占位符视图控制器,您还可以使其视图的背景颜色清晰并执行任何您想要执行的外观更改。

__weak CurrentViewController *weakSelf = self ; 

UIActivityViewController *activityViewController = [[UIActivityViewController alloc] initWithActivityItems:@[_image] applicationActivities:nil] ; 
UIViewController  *viewC = [[UIViewController alloc] initWithNibName:@"BlankViewController" bundle:nil] ; 
UINavigationController *navC = [[UINavigationController alloc] initWithRootViewController:viewC] ; 
activityViewController.completionHandler = ^(NSString *activityType, BOOL completed) 
{ 
[weakSelf dismissViewControllerAnimated:NO completion:^{ 
    ; // Your completion handler 
}] ; 
};[self presentViewController:navC animated:NO completion:^{ 
[navC presentViewController:activityViewController animated:YES completion:^{ 
    ; 
}] ; 
}]; 

版权声明:本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系管理员进行删除。
喜欢 (0)