2013-05-22 8 views
0

아래처럼 UITabbar를 만들고 싶습니다. 그러나 그 일을 할 논리가 무엇인지 모르겠습니다.UITabbar를 어떻게 만들 수 있습니까?

enter image description here

+0

UITabBarController를 서브 클래스 화하고 일반 바가있는 구성으로 사용자 정의 UIView를 배치 할 수 있습니다. 그런 다음 일반 setTabBarIndex :를 호출하여 버튼을 처리 할 수 ​​있습니다. 이를 수행하는 방법을 모르는 경우 일부 코드를 사용하여 더 큰 답변으로이 코드를 배포 할 수 있습니다. –

+0

큰 답변을 올리시겠습니까? – user2411400

답변

0

가 여기에 대형 답변입니다 : 모든

첫째, 당신은 당신이 원하는 바처럼 보이는 뷰를 얻을 수있는 UIView의 서브 클래스를 작성해야합니다. 배경 UIImageView와 세 개의 버튼으로 구성 할 수 있습니다.

그런 다음 UITabBarController의 하위 클래스를 만들고 viewDidLoad 또는 흐름이 한 번만 지나가는 지점에서 가장 좋은 방법은 첫 번째 점에서 지정된 유형의 뷰 하나를 인스턴스화하는 것입니다. 컨트롤러의 원래 탭 막대를 숨기려면이 뷰의 프레임을 배치해야합니다.

@interface CustomBar : UIView 
{ 
} 

@property (nonatomic, retain) UIImageView *backgroundView; 
@property (nonatomic, retain) NSArray *buttons; 

@end 

쉽게 구현을 완료 할 수 있습니다

사용자 정의 바 헤더 파일이 될 것입니다. nib 파일로 인스턴스화하는 방법을 찾아 쉽게 설계 할 수 있습니다. 테스트를 위해 배경색을 녹색이나 눈에 보이는 부분으로 설정할 수 있습니다.

@interface CustomTabBarController : UITabBarController 

@property (nonatomic, retain) CustomBar *customBar; 

@end 


@implementation CustomTabBarController 

- (void)viewDidLoad 
{ 
    [super viewDidLoad]; 

    self.customBar = [[[CustomBar alloc] initWithFrame:[self.tabBar frame]] autorelease]; 
    [self.view addSubview:self.customBar]; 
} 

@end 

, 당신은 ARC를 사용하지 않는 경우의 dealloc을 구현하기 위해 기억하십시오 :

그런 다음이는 UITabBarController가 클래스의 서브 클래스가 될 것입니다. 여기서는 정렬되지 않은 것은 custombar와 tabbarcontroller에서 버튼 사이의 통신을 만드는 방법입니다. 이것은 대표들에 의해 해결되어야합니다. 도움이 필요하면 그걸 완성 할게요.

행운을 빈다.

관련 문제