我有一个使用 In App 功能的应用程序。
-(void) completeTransaction: (skPaymenttransaction *)transaction{
}
当上述方法被调用时,我想删除所有子视图并返回我的主菜单窗口(我的应用程序中的第一个视图)。
谁能建议最干净和最好的方法来做到这一点?
干杯
编辑:
只是为了让事情清楚
我不确定这是否会有所不同,但我有我的主菜单屏幕,然后我使用输入按钮执行以下操作。
UIViewController *controller = [[UIViewController alloc] initWithNibName:@"NibFile" bundle:nil];
controller.delegate = self;
controller.modalTransitionStyle = UIModalTransitionStyleFlipHorizontal;
[self presentModalViewController:controller animated:YES];
[controller release];
然后我有一个带有按钮的主屏幕,然后当用户点击它时,它会向他们展示另一个如上所述的模式视图控制器。在这个视图上有一个按钮,上面写着 BUY。他们使用单击此按钮,然后 StoreKit 执行此操作,一旦付款完成,我想摆脱上面的两个模态控制器并留下主菜单屏幕。
任何想法..我试过如上
编辑2:
@乔丹谢谢,
但不确定我这样做是否正确。我理解上面的代码。
但是当我启动我的应用程序时,我的应用程序委托会加载一个视图控制器,这是我的主菜单。然后我有一个按钮,可以将我带到另一个视图,如果用户单击未解锁的功能,则会显示我的功能,然后它会显示另一个视图控制器并打开商店。
所以考虑到这一点,我如何回到我的主菜单。
我尝试了以下方法:
NSArray *subviews = [myAppdelegate.viewcontroller.view subviews];
for (int i=0; i<[subviews count]; i++)
{
[[subviews objectAtIndex:i] removeFromSuperview];
}
但我得到了以下错误:
预期 ':' 在 '.' 之前 ?