我正在尝试从“ IAPHelper”调用“ SettingsViewController”中的方法。
在寻找答案之后,我想我已经掌握了如何做的要点。这是我所做的:
SettingsViewController.h
@interface SettingsViewController : UITableViewController
- (void)stopActivityIndicatorAnimating;
SettingsViewController.m
- (void)stopActivityIndicatorAnimating
{
// DO STUFF
}
IAPHelper.h
#import "SettingsViewController.h"
IAPHelper.m
SettingsViewController *settingsViewControllerInstance = [[SettingsViewController alloc] init];
[settingsViewControllerInstance stopActivityIndicatorAnimating];
现在,我到处寻找有相同问题的人,但是对我来说,解决方案都像我在做的一样!
我遇到的问题是没有错误,应该执行代码(我已经添加了NSLog),但是应该调用的方法内部的代码却没有发生。只是默默地不这样做。
有人可以告诉我,如果我错过了某件事,完全错了(很可能),还是真的应该工作,而我在其他地方做错了,在这种情况下,我会让你一个人。
谢谢!
最佳答案
我建议使用NSNotification。
在您的IAPHelper.m中发送通知:
[[NSNotificationCenter defaultCenter] postNotificationName:@"StopAnimating"
object:self];
然后在您的SettingsViewController.m viewDidLoad方法中执行以下操作:
[[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(stopActivityIndicatorAnimating)
name:@"StopAnimating"
object:nil];
使用此代码,通知将从IAPHelper类内部发送到SettingsViewController类,在该类中将调用stopActivityIndicatorAnimating方法。