UIActivityViewController旋转问题

Tom*_*eit 5 uiviewcontroller ios uiactivityviewcontroller

我遇到了UIActivityViewController的问题,每次用户按下"共享"按钮时我都会实例化一个新实例,但它不能正常旋转.我的代码缺少必要的东西吗?

当我只旋转状态栏并且UIActivityViewController将旋转(而不是后台中的视图)时,有时activityView的大小也会出错.

    UIActivityViewController *activityVC;
    // Init sharing items and View Controller
    NSString *message = [NSString stringWithFormat:@""];

    UIImage *imageToShare = [UIImage imageNamed:@"imageName"];
    NSArray *postItems = @[message, imageToShare];

    activityVC = [[UIActivityViewController alloc]
                   initWithActivityItems:postItems
                   applicationActivities:nil];


    [self presentViewController:activityVC animated:YES completion:^() {
        [activityVC setCompletionHandler:^(NSString *activityType, BOOL completed) {
            // Completed
        }];
    }];
Run Code Online (Sandbox Code Playgroud)

Alu*_*num 0

如果我正确理解你的问题,你有一个不旋转的视图,对吧?在这种情况下,您需要做的就是将此代码放入视图控制器中UIActivityViewController

- (BOOL)shouldAutorotate
{
    return YES;
}

- (NSUInteger)supportedInterfaceOrientations
{
    return UIInterfaceOrientationMaskPortrait | UIInterfaceOrientationMaskPortraitUpsideDown;
}
Run Code Online (Sandbox Code Playgroud)

- (NSUInteger)supportedInterfaceOrientations已经为您放置了UIInterfaceOrientationMaskPortraitUIInterfaceOrientationMaskPortraitUpsideDown,这将使视图仅当您将设备倒置时才能旋转,但您可以添加 UIInterfaceOrientationMaskLandscapeLeft 和/或 UIInterfaceOrientationMaskLandscapeRight让视图在所有方向上旋转。

希望我的回答对您有帮助,如果没有您能更好地向我解释一下您的情况吗?祝你有美好的一天。