我有一个应用程序,在UIViewController
内的tableview中显示高级内容。加载时,检查订阅是否有效的viewDidLoad
方法,并相应地显示内容。
我的问题是,在用户确认购买订阅后,我无法立即刷新内容。我使用ViewController.m
覆盖了我的[self checkSubscription]
文件,唯一的刷新方法是导航到另一个标签,然后返回(在[self checkSubscription]
方法中添加viewWillAppear
)或点按购买按钮或恢复按钮,它会立即刷新。
-(void)checkSubscription{
NSLog(@"Checking");
if ([[JCSubscriptionManager sharedManager] isSubscriptionActive]) {
_buyBtn.enabled = NO;
_restoreBtn.enabled = NO;
_restoreBtn.hidden = YES;
_buyBtn.hidden = YES;
_msgLabel.hidden = YES;
} else {
_buyBtn.enabled = YES;
_restoreBtn.enabled = YES;
_restoreBtn.hidden = NO;
_buyBtn.hidden = NO;
_msgLabel.hidden = NO;
}
[self retrieveData];
[self.tableView reloadData];
[self.view setNeedsDisplay];
}
有任何想法/建议吗?
我正在使用IAP的JC自动续订管理器。我找到了确切的代码行,我得到了订阅现在处于活动状态的确认(NSLog)并更改了订阅变量的值。之后我添加了以下几行:
DTPremiumViewController *vc = [[DTPremiumViewController alloc]init];
[vc.tableView reloadData];
[vc viewWillAppear:NO];
但仍然没有运气。