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:已弃用。什么都不做。
我该怎么办?
答案 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];
}
}
看看它是否正常。