Mc.*_*ver 5 iphone xcode objective-c ios sprite-kit
我试图呈现UIActivityViewController一个SkView 但是xcode给了我这个错误:
'GameOver'没有可见的@interface声明选择器'presentViewController:animated:completion:'
- (void)shareScore {
//add view
UIView *Sview = [[UIView alloc]initWithFrame:CGRectMake(0, 0, 512, 512)];
UIImageView *image = [[UIImageView alloc]initWithImage:[UIImage imageNamed:@"shareScoreImg.png"]];
image.frame = Sview.frame;
[Sview addSubview:image];
//add label
CGRect fframe = self.view.frame;
UILabel *score = [[UILabel alloc] initWithFrame:fframe];
score.text = @"9999";
score.textAlignment = NSTextAlignmentCenter;
score.textColor = [UIColor darkGrayColor];
score.center = CGPointMake(250, 440);
score.font = [UIFont fontWithName:@"Pixel LCD7" size:50];
[Sview addSubview:score];
//capture view
UIGraphicsBeginImageContextWithOptions(Sview.bounds.size, Sview.opaque, 0.0);
[Sview.layer renderInContext:UIGraphicsGetCurrentContext()];
UIImage * screenshot = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
UIActivityViewController* activityViewController =
[[UIActivityViewController alloc] initWithActivityItems:@[screenshot]
applicationActivities:nil];
[self presentViewController:activityViewController animated:YES completion:nil];
}
Run Code Online (Sandbox Code Playgroud)
如何在SKScene上显示预设的viewController?谢谢 .
Mc.*_*ver 21
我们可以使用"presentModalViewController"来使用此代码来访问根视图控制器
UIViewController *vc = self.view.window.rootViewController;
[vc presentViewController: activityViewController animated: YES completion:nil];
Run Code Online (Sandbox Code Playgroud)
现在它工作正常!
IIRC SKScene你创造的第一个是在里面SKView.
这SKView是在里面UIViewController.
你可以使用任何你喜欢访问的方法,属性或委托或UIViewController通过SKView从SKScene.甚至使用通知.
然后,UIViewController您可以在没有问题的情况下呈现新的视图控制器.
| 归档时间: |
|
| 查看次数: |
6424 次 |
| 最近记录: |