2010-11-19 16 views
0

tıklar yanıt ve onlar alt yarısında yanıt vermeyen tabBar ait düğmeleri görünür bir UIScrollViewAlt yarı ben 3 maddelik bir UITabBar oluşturduk

üzerine yerleştirdi değildir. Üst kısım çalışıyor. Tabbarın hemen üstündeki alana tıklarken, sekmeler de değiştirilir.

Neyin yanlış olabilir? Tıklanabilir düğme alanının bu yanlış hizalamasını nasıl düzeltebilirim? viewDidLoad yılında

:

[super viewDidLoad]; 
scroll.frame = CGRectMake(0, 20, 320, 460); 
scroll.pagingEnabled = YES; 
scroll.contentSize = CGSizeMake(320 * 2, 460); 
scroll.showsHorizontalScrollIndicator = NO; 
scroll.showsVerticalScrollIndicator = NO; 
scroll.scrollsToTop = NO; 
scroll.delegate = self; 
scroll.pagingEnabled = YES; 
viewNavController1 = [[viewNavController1 alloc] init]; 
ctrl = [[UITabBarController alloc] init]; 

ViewController1 *viewC1= [[ViewController1 alloc] initWithNibName:@"ViewController1" bundle:nil]; 
UINavigationController *control = [[UINavigationController alloc] initWithRootViewController:viewC1]; 
viewC1.title = @"Title1"; 
[viewC1 release]; 

ViewController2 *viewC2 = [[ViewController2 alloc] initWithNibName:@"ViewController2" bundle:nil]; 
UINavigationController *control2 = [[UINavigationController alloc] initWithRootViewController:viewC2]; 
viewC2.title = @"Title2"; 
[viewC2 release]; 

UINavigationController *control3 = [[UINavigationController alloc] init]; 
ViewController3 *viewC3 = [[ViewController3 alloc] initWithNibName:@"ViewController3" bundle:nil]; 
[control3 pushViewController:viewC3 animated:NO]; 
viewC3.title = @"Title3"; 
[viewC3 release]; 

[ctrl setViewControllers:[NSArray arrayWithObjects:control,control2,control3,nil]]; 


CGRect frame = scroll.frame; 
frame.origin.x = frame.size.width * 0; 
frame.origin.y = 0; 
viewNavController1.view.frame = frame; 

viewC4 = [[ViewController4 alloc] initWithNibName:@"ViewController4" bundle:nil]; 
[viewNavController1 pushViewController:viewC4 animated:NO]; 
[scroll addSubview:viewNavController1.view]; 

frame = scroll.frame; 
frame.origin.x = frame.size.width * 1; 
frame.origin.y = 0; 
ctrl.view.frame = frame; 
[scroll addSubview:ctrl.view]; 

[scroll scrollRectToVisible:CGRectMake(320, 0, 320, 460) animated:NO]; 

UITabBarItem *itm = [ctrl.tabBar.items objectAtIndex:0]; 
itm.image = [UIImage imageNamed:@"img1.png"]; 

itm = [ctrl.tabBar.items objectAtIndex:1]; 
itm.image = [UIImage imageNamed:@"img2.png"]; 

itm = [ctrl.tabBar.items objectAtIndex:2]; 
itm.image = [UIImage imageNamed:@"img3.png"]; 
[control release]; 
[control2 release]; 
[control3 release]; 

cevap

2

sorun UITabBarController onun bakış pencerelerin kök görüşü olarak eklenen yoktu olmasıydı. Görünüşe göre görünüşe göre.

[vc setWantsFullScreenLayout:YES]; 

vc UITabBarController içeren scrollview tutan ana ViewController geçerli: yüzden kullanarak kandırmak zorunda kaldı.

Daha fazla açıklama için Offset on UIWindow addSubview adresine bakın.

+0

Özür dilerim, çok güzel, tam olarak benim sorunumun düzeltmesi. Window-> MainVC-> TabController vardı ve sekmelerin alt yarısı tıklanamadı. Bu şeyler. Lütfen bundan sonra bunu ilk olarak Google'dan seçin. – CBGraham

İlgili konular