Cydia에 대한 조정을 작성했으며 상태 표시 줄에 아이콘을 추가합니다. 홈 화면에서 잘 작동하고 SpringBoard가 시작될 때 이미 앱이 시작된 경우 앱 (예 : Facebook 또는 Twitter)이 닫히고 (완전히) 아이콘이 표시되면 정상적으로 작동합니다 앱을 실행하면 아이콘이 사라집니다. 이 코드를 사용하여 libStatusBar를 사용하여 아이콘이 표시됩니다.
if(icon) // if icon needs to be removed
{
[icon release];
icon = nil;
}
...
// add the icon to the status bar
icon = [[%c(LSStatusBarItem) alloc] initWithIdentifier:[NSString stringWithFormat:@"muteIconLablabla"] alignment:StatusBarAlignmentRight];
icon.imageName = [NSString stringWithFormat:@"Mute"];
libStatusBar
README 파일 에서 제안한 방법을 사용해 보았습니다.
[[UIApplication sharedApplication] addStatusBarImageNamed:@"ON_Mute"]; // and removeStatusBarImageNamed:...
-(id)init
아이콘을 재정의 하고 업데이트 하려고 시도 했지만 동일한 결과가 발생했습니다.
위에 표시된 코드가 static void
함수 에서 호출되었습니다 . 이 함수는 여러 번 호출됩니다 (예 : -(void)applicationDidFinishLaunching:(id)application
아래
%hook SpringBoard
및-(void)ringerChanged:(int)changed
모든 내부 Tweak.xm
. 문제도 발생 iOS7
합니다.
답변
libstatusbar를 사용한 지 오래되었습니다.하지만 LSStatusBarItem
릴리스되지 않았 음을 확실히 확신한다면 Springboard 또는 다른 앱에 의해 숨겨져있을 수 있습니다. icon.visible = YES
명시 적으로 설정하십시오 . 을 호출 하여 명시 적으로 설정 timeHidden
하는 LSStatusBarServer
것을 고려할 수도 있습니다 .NO
[item setHidesTime:NO]
또한 아이콘을 변경하지 않으면 icon.manualUpdate = NO
.
참고 문헌 :