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

时间:2011-06-08 09:11:24

标签: iphone cocoa-touch ios icons statusbar

Apple不允许开发人员在状态栏中添加图标吗?

我按照书中的代码。代码很简单:

@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"];

    }
}

但它提供了以下反馈:

  

-addStatusBarImageNamed:已弃用。什么都不做。

我该怎么办?

2 个答案:

答案 0 :(得分:2)

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

答案 1 :(得分:0)

Classes / 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];
}
}  

看看它是否正常。