2012-10-06 3 views
0
-(void)applicationDidFinishLaunching:(UIApplication *)application{ 

    [[[self.window.rootViewController.tabBarController.viewControllers objectAtIndex:1] tabBarItem]setBadgeValue:@"1"]; 
} 

UI 용 스토리 보드를 사용하고 Tabbar 항목 중 하나에 알림 번호를 설정하려고하지만 잘못된 것이 있습니다.tabbar 항목에 대해 setBadgeValue 메서드를 호출하는 방법

이 코드의 문제점은 무엇입니까? 왜 내가 탭 모음 항목에 알림을 표시하지 않습니까?

미리 감사드립니다.

답변 :

FROM APPDELEGATE: 
    UITabBarController *tabController = self.window.rootViewController; 
     UIViewController *requiredViewController = [tabController.viewControllers objectAtIndex:1]; 
     UITabBarItem *item = requiredViewController.tabBarItem; 
     [item setBadgeValue:@"1"]; 
+0

무엇이 오류입니까? –

+0

위의 방법은 작동하지 않지만 내가 알기로는 알림을보아야합니다. – pvllnspk

+0

@downvoters, 설명하거나 응답하십시오. 나는 ios에서 초보자이며 나에게 이것은 분명하지 않은 것 같다. 왜이 코드가 작동하지 않는가? – pvllnspk

답변

4

왜 모두 한 줄에?

작은 단계로 나누고 1 단계에서 중단 점을 설정 한 다음 코드 검사를 진행하여 각 줄에서 예상되는 내용을 확인합니다.

UIViewController *rootController = self.window.rootViewController; 
UITabBarController *tabController = rootController.tabBarController; 
UIViewController *requiredViewController = [tabController.viewControllers objectAtIndex:1]; 
UITabBarItem *item = requiredViewController.tabBarItem; 
[item setBadgeValue:@"1"]; 

나는 당신의 특성 중 하나가 nil 것으로 의심 -이 보통 왜 내 방법은 경고 나 error` 유형의 버그없이 실패하는 '의 원인이다.

+0

조언을 많이 주셔서 감사합니다. 이쪽으로하면됩니다 ... – pvllnspk

+0

도움이된다는 사실을 증명할 때까지 자신감을 표 주셔서 감사하지만 내 대답을 수락하지 마십시오. 완전히 틀릴 수도 있습니다! – deanWombourne

관련 문제