运行 AppDelegate 中的 didFinshLaunchingWithOptions 而应用程序是 运行?
Run didFinshLaunchingWithOptions in the AppDelegate while application is running?
有什么方法可以执行
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
方法,而该应用 运行 来自不同的 ViewController?
你不应该自己调用委托方法,你可以使用NSNotificationCenter
- 在我们的例子中,用不同的方法 (
someThingInterestingHappened
) 编写您要执行的代码。
- 通过在
defaultNotificationCenter
上调用 addObserver
将 class 注册到通知,即 [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(someThingInterestingHappened:) name:@"desiredEventHappend" object:nil];
- Post 来自任何 class
[[NSNotificationCenter defaultCenter] postNotificationName:@"desiredEventHappend" object:nil];
的通知
在您的应用委托中维护一个单独的方法来设置导航栏外观。
在您的 AppDelegate.h 文件中,声明相同的方法。
@interface AppDelegate : UIResponder <UIApplicationDelegate>
@property (strong, nonatomic) UIWindow *window;
-(void)setNavBarAppearance;
@end
在 appDelegate.m 文件中,编写该方法的功能
@implementation AppDelegate
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
// Override point for customization after application launch.
[self setNavBarAppearance];
}
-(void)setNavBarAppearance {
//Do what is required here.
}
@end
然后,在任何需要调用相同方法的地方:
#import "AppDelegate.h"
AppDelegate* appDelegate = (AppDelegate*)[UIApplication sharedApplication].delegate;
[appDelegate setNavBarAppearance];
有什么方法可以执行
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
方法,而该应用 运行 来自不同的 ViewController?
你不应该自己调用委托方法,你可以使用NSNotificationCenter
- 在我们的例子中,用不同的方法 (
someThingInterestingHappened
) 编写您要执行的代码。 - 通过在
defaultNotificationCenter
上调用addObserver
将 class 注册到通知,即[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(someThingInterestingHappened:) name:@"desiredEventHappend" object:nil];
- Post 来自任何 class
[[NSNotificationCenter defaultCenter] postNotificationName:@"desiredEventHappend" object:nil];
的通知
在您的应用委托中维护一个单独的方法来设置导航栏外观。
在您的 AppDelegate.h 文件中,声明相同的方法。
@interface AppDelegate : UIResponder <UIApplicationDelegate>
@property (strong, nonatomic) UIWindow *window;
-(void)setNavBarAppearance;
@end
在 appDelegate.m 文件中,编写该方法的功能
@implementation AppDelegate
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
// Override point for customization after application launch.
[self setNavBarAppearance];
}
-(void)setNavBarAppearance {
//Do what is required here.
}
@end
然后,在任何需要调用相同方法的地方:
#import "AppDelegate.h"
AppDelegate* appDelegate = (AppDelegate*)[UIApplication sharedApplication].delegate;
[appDelegate setNavBarAppearance];