2011-03-11 3 views
0

iDevRecipes에는 제기 된 가운데 탭 막대 단추를 허용하는 몇 가지 코드가 있습니다.제기 센터 UITabBar 버튼 및 가로 모드?

http://idevrecipes.com/2010/12/16/raised-center-tab-bar-button/

애플 리케이션 그들은 모두 세로보기 만에 자신을 제한가 (경로, 인스 타 그램 등) 언급.

가로 모드에서 제기 된 단추는 기본 세로 모드에서도 어떻게 처리됩니까?

TabBar 파생 클래스에 shouldAutoRotate를 추가했으나 필요한 것은 아닙니다.

답변

0

제가 알 수 있듯이 가로로 사용하면 문제가 발생하지 않습니다. 물론 코드를 시험하지 않았으므로 어떤 약속도 할 수 없습니다.

내가 상상 한 문제는 회전 후에 센터 버튼이 중앙에 오지 않는다는 것입니다. 나는이 문제를 해결하는 가장 쉬운 방법은 위의 코드는 button는 인스턴스 변수라고 가정 다음 코드

- (void)didRotateFromInterfaceOrientation:(UIInterfaceOrientation)fromInterfaceOrientation { 
    CGFloat heightDifference = buttonImage.size.height - self.tabBar.frame.size.height; 
    if (heightDifference < 0) { 
     button.center = self.tabBar.center; 
    } else { 
     CGPoint center = self.tabBar.center; 
     center.y = center.y - heightDifference/2.0; 
     button.center = center; 
    } 
} 

함께 추측한다. 더 멋진 일을 수행하려는 경우 같아요

, 당신은 다음과 같은 방법 오버라이드 (override) :

- (void)willRotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation duration:(NSTimeInterval)duration 

을하고 버튼의 중심에 애니메이션,하지만 난 그 코드를 제공하지 않을거야.

제공된 코드를 실행하지 않았지만 작동해야한다고 생각합니다. 그렇지 않다면 의견을 남겨주세요. 개선을 위해 내가 할 수있는 일을 알게 될 것입니다.