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

我有一个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:^{

;

}] ;

}];

回答:

子类UIActivityViewController并覆盖supportedInterfaceOrientations只允许肖像。

以上是 UIActivityViewController的“更多”按钮打破方向设置 的全部内容, 来源链接: utcz.com/qa/262410.html

回到顶部