2011-01-22 7 views
0

TabBarController 응용 프로그램이 있습니다.tabbar 문제의 사용자 정의 단추

didFinishingLaunching 방법이 코드 :

UIImage *buttonImage = [UIImage imageNamed:@"post-button2.png"]; 

UIButton* button = [UIButton buttonWithType:UIButtonTypeCustom]; 

NSLog(@"Button size: %f, %f", buttonImage.size.width, buttonImage.size.height); 

button.frame = CGRectMake(0.0, 0.0, buttonImage.size.width, buttonImage.size.height); 
[button setBackgroundImage:buttonImage forState:UIControlStateNormal]; 

CGFloat heightDifference = buttonImage.size.height - self.tabBarController.tabBar.frame.size.height; 

NSLog(@"self.tabBarController.tabBar.frame.size.height: %f", self.tabBarController.tabBar.frame.size.height); 
NSLog(@"heightDifference: %f", heightDifference); 
NSLog(@"%Tabbar: %f, %f", tabBarController.tabBar.center.x, tabBarController.tabBar.center.y); 
if (heightDifference < 0) 
    button.center = tabBarController.tabBar.center; 
else { 
    CGPoint center = self.tabBarController.tabBar.center; 
    center.y = center.y - heightDifference/2.0; 
    button.center = tabBarController.tabBar.center; 
} 

NSLog(@"%Button: %f, %f", button.center.y, button.center.x); 

[tabBarController.view addSubview:button]; 

[self.window addSubview:tabBarController.view]; 
[self.window makeKeyAndVisible]; 

출력은 :

alt text

여기서 문제가 있습니까? 하드 코딩 된 코드로 해결할 수 있습니다.

CGPoint center = tabBarController.tabBar.center; 
center.x = 160.00; 
center.y = 455.50; 

button.center = center; 

하지만 그게 맞는지 확실하지 않습니다.

Ty.

답변

0

탭의 이미지를 설정하려면 탭과 연결된 뷰 컨트롤러의 tabBarItem을 설정해야합니다.

맞춤 이미지로 만드는 방법은 UITabBarItem 참조를 참조하십시오.

그래서 사용자 지정 이미지로 UITabBarItem 개체를 만든 다음이 탭에 대한 viewcontroller의 tabBarItem 속성으로 만듭니다.

그러면 UITabBarController는 이미지를 올바른 위치에 두는 것을 관리합니다.

+0

탭바는 아니며 탭바 위에있는 맞춤 버튼입니다. –

관련 문제