如何在iphone/ipod状态栏中添加图标?

如何在iphone/ipod状态栏中添加图标?,iphone,cocoa-touch,ios,icons,statusbar,Iphone,Cocoa Touch,Ios,Icons,Statusbar,苹果不允许开发者在状态栏中添加图标吗 我遵循一本书中的代码。代码很简单: @interface UIApplication (extended) - (void) addStatusBarImageNamed:(NSString *)aName; - (void) removeStatusBarImageNamed:(NSString *)aName; @end - (void)performAction{ if (xxx) { [[UIApplication

苹果不允许开发者在状态栏中添加图标吗

我遵循一本书中的代码。代码很简单:

@interface UIApplication (extended) 
- (void) addStatusBarImageNamed:(NSString *)aName; 
- (void) removeStatusBarImageNamed:(NSString *)aName; 

@end 

- (void)performAction{
    if (xxx) {
        [[UIApplication sharedApplication]addStatusBarImageNamed:@"Default_EN.png"];
    }
    else {
        [[UIApplication sharedApplication]addStatusBarImageNamed:@"Default_EC.png"];

    }
}
但它给出了以下反馈:

-AddStatusBarImageName:已弃用。什么也不做


我能做什么呢?

据我所知,这在SDK中是不允许的,但也有可能他们有一些私有API可以这样做,但到目前为止他们还没有公开这些,我想你无法在状态栏中添加图标如果有人知道,请纠正我。

类/YourViewController.m中,addStatusBarImageNamed:removeOnExit:方法需要用该方法覆盖

- (void) addStatusBarImageNamed:(NSString*)image removeOnExit: (BOOL) remove {
if(_statusbarimage!=nil && _responds) {
if ([[[NSUserDefaults standardUserDefaults] objectForKey:@"statusBarEnabled"] integerValue] == 1)
[self removeStatusBarImageNamed:_statusbarimage];
statusbarimage=image;
}
if (_responds) {
if ([[[NSUserDefaults standardUserDefaults] objectForKey:@"statusBarEnabled"] integerValue] == 1)
[super addStatusBarImageNamed:image removeOnExit: remove];
}
}  

看看它是否工作正常。

正确,这是私有API。即使是不推荐的API,这也会直接导致应用商店拒绝使用。+1-也请参阅。谢谢@Nick Weaver@WebberLai:也请阅读@Nick Weaver提供的SO链接。新sdk版本对此有任何更新吗?