2013-04-25 3 views
6

UITabBarSystemItem을 사용하여 탭 모음 제목을 어떻게 설정할 수 있는지 알고 싶습니까?UITabbarsystemitem으로 제목을 설정하는 방법

내가 무슨 짓을 :

self.tabBarItem = [[UITabBarItem alloc] initWithTabBarSystemItem:UITabBarSystemItemFeatured tag:0];

그래서 그 대신 "추천"(때문에 UITabBarSystemItemFeatured 객체)의 기본적으로 제목을 변경, 나는 썼다 :

self.tabBarItem.title = @"Actu";

내 마음 속에서 나는 "특집품"대신 "Actu"를 제목으로 가져야한다.

하지만 아무 것도 변경되지 않고 제목은 계속 "추천"(기본 제목)으로 유지됩니다.

는 또한 시도 : (이 tabbaritem는 인덱스 0이기 때문에), 그러나

[[self.tabBarController.tabBar.items objectAtIndex:0] setTitle:NSLocalizedString(@"Actu", @"Actu")];

아무것도 변경되지 않습니다.

또는 UITabBarSystemItem 개체를 사용하여 이러한 수정을 수행 할 수 없습니까?/

답변

4

initWithTabBarSystemItem:tag:을 사용하여 초기화하면 나중에 이미지 또는 제목 속성을 변경할 수 없습니다.

출처 : iOS Development Documentation

+0

이 좋아, 그래서 난 내 자신의 사진을 가져올 수 있습니다. 빠른 답변 주셔서 감사합니다! – Lucien

0

당신은 이미 쓴 : ... 지금 내 영어 및 다른 어떤 잘못, 1 게시물에 대한 죄송합니다 :/

PS :

나는이 잘 설명 충분히 희망

을 ... UITabBarSystemItem 개체를 사용하면 이러한 수정이 불가능합니다 ...

이들은 title 및를 가지고 있습니다.속성은 nil으로 설정되어 있으므로 이러한 값은 일부 내부 전용 속성에 저장됩니다.

는 또한 문서 말 : 반환 된 항목의

-initWithTabBarSystemItem:tag:
제목과 이미지 속성을 나중에 변경할 수 없습니다.

-3

나는이 오래 실현, 그러나 아마이이 작업을 수행하고자하는 다른 사람을 도움이 될 것이다. 위에서 설명한대로 시스템 항목에서 tabBarItem을 만듭니다. 그런 다음 사용자 정의 아이콘이있는 것처럼 다른 tabBarItem을 작성하고 시스템 항목에서 이미지를 복사하십시오.

 UITabBarItem* systemItem = [[UITabBarItem alloc] initWithTabBarSystemItem:UITabBarSystemItemFeatured tag:0]; 
     UITabBarItem* theItem = [[UITabBarItem alloc] initWithTitle:theNameIWantToUse image:systemItem.image tag:0]; 
+3

이것은 작동하지 않습니다. 여기서 systemItem.image는 nil이됩니다. – LightningStryk

+0

그래, 내 대답이 정확하지 않아 나중에 많이 발견했다. –

+0

systemItem.title도 nil입니다. –

0

실제로이 가능, 당신은 private API.

[self.tabBarItem setValue:@"Categories" forKey:@"internalTitle"]; 

주의 사항에서 방법 _setInternalTitle:을 이용할 수있다 : 테스트 빌드에만 사용하십시오.

2

KVC를 사용할 수 있습니다. 내가 제목을 설정하려면

[self.tabBarItem.setValue("YourTitle", forKey: "internalTitle")];