我已经为SKStoreProductViewController实现了一个委托。 我将视图控制器添加到按键窗口的视图控制器中。 我也在代理函数中实现了一个dismiss view controller代码。SKStoreProductViewController取消按钮崩溃或不工作
这个问题似乎是在这个问题上的答案。
Modal App Store won't dismiss
然而,这个问题仍然存在于我的情况中。
显示功能
if (floor(NSFoundationVersionNumber) > NSFoundationVersionNumber_iOS_6_1) {
NSString *appURL = [NSString stringWithFormat:@"itms-apps://itunes.apple.com/%@/app/id%@",
[[NSLocale preferredLanguages] objectAtIndex:0], applicationID];
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:appURL]];
} else {
NSDictionary* dict = [NSDictionary dictionaryWithObject:applicationID forKey:SKStoreProductParameterITunesItemIdentifier];
SKStoreProductViewController *viewCont = [[SKStoreProductViewController alloc] init];
viewCont.delegate = self;
[viewCont loadProductWithParameters:dict completionBlock:^(BOOL result, NSError *error)
{
UIViewController* viewController = [UIApplication sharedApplication].keyWindow.rootViewController;
if (viewController)
{ [viewController presentViewController:viewCont animated:YES completion:nil]; }
}];
}
委托功能
- (void)productViewControllerDidFinish:(SKStoreProductViewController *)viewController
{
if (viewController)
{ [viewController dismissViewControllerAnimated:YES completion:nil]; }
}
自身不是视图控制器 –
SKStoreProductViewController中的取消按钮或...? – McLand
SKStoreProductViewController中的Cancel按钮。但是这个类不是视图控制器。父视图是关键窗口的视图控制器。 –