Obj-C的新手,我试图触发viewControllerB实例的方法myMethod。
=> viewControllerB在viewControllerA中实例化。
=>我正在尝试从AppDelegate调用myMethod
=>似乎无论如何我都会尝试这样做,它会在viewControllerB的新实例中触发myMethod
所以问题是:如何将消息发送到viewController的现有实例?
由于我对Obj-C还不太满意,请提供代码示例进行解释。
谢谢 !
viewControllerA.m:
if (_viewControllerB == nil) {
self.viewControllerB = [[[ViewControllerB alloc] initWithNibName:@"ViewControllerB" bundle:[NSBundle mainBundle]] autorelease];
}
viewControllerB.m:
- (void)myMethod{ NSLog(@"myMethod!");}
AppDelegate.m:不知道您在这里放什么:(
最佳答案
要获得相同的实例
用于(UIViewController * self.navigationController.viewControllers中的视图)
{
if(view isKindOfClass:[viewControllerB class])
{
[view yourmethodname];
}
}
关于iphone - 从AppDelegate访问类的运行实例,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/5450409/