我有一些RootviewControllers
,当然还有一个App Delegate。在我的应用程序委托我切换到我想要的所有控制器。将RootviewController中的函数调用到AppDelegate
现在,我想禁用GPS,如果用户按下应用程序委托(-IBAction Deklaration)上的完成按钮。我如何从我的RVC调用该功能。
我已经看到,样品
MyAppDelegate *delegate = (MyAppDelegate *)[[UIApplication sharedApplication] delegate];
,但我并不真正了解它做什么。
在我的RootViewController的我想这
[self.mapView setShowsUserLocation:NO];
可在App代表在这个函数
-(IBAction) btnLocationDone {
[UIView beginAnimations:nil context:nil];
[UIView setAnimationDuration:0.7];
[UIView setAnimationTransition:UIViewAnimationTransitionCurlDown
forView:MainView cache:YES];
[UIView commitAnimations];
[MainWindow addSubview:MainView];
[LocationWindow setHidden:YES];
[MainWindow setHidden:NO];
[LocationWindow removeFromSuperview];
}
请帮忙执行。
谢谢你帮了我很多(我完全是新的iPhone发展)。如果我写下一个应用程序,我会遵循你的忠告。但目前,如果我从AppDelegate执行IBActions,苹果拒绝我的应用程序? – CaspervanDoorn
苹果不会拒绝应用程序,因为它的结构很差;然而,一个结构不好的应用程序可能会有其他问题,可能会导致它被拒绝。对于你来说,阅读MVC(正确的,Smalltalk/Objective-C风格的MVC)是一个不错的主意,并且可以回顾一些通常很好形成的Apple例子。 –
谢谢,我会这么做;) – CaspervanDoorn