2014-07-25 3 views
0

TabbBar를 만들고 다음과 같이 다른 ViewController를 side.Active와 같은 Subview로 가져와 사용했습니다. 뷰가 성공적으로로드되었지만 뷰 내에로드 된 Viewcontroller.view와 상호 작용할 수 없습니다.Subview 탭/터치에 응답하지 않습니다.

완료하는 .m 및 .H 파일의 코드는이 뭐가 잘못

- (void)tabBar:(UITabBar *)tabBar didSelectItem:(UITabBarItem *)item{ 
[_InnerContentView removeFromSuperview]; 
_InnerContentView = nil; 
_InnerContentView=[[UIView alloc]init];//UIView Inside the Main View;Used to add otherViews as sub Views 
vc=nil;//UIViewController; 

switch (item.tag) 
{ 
    case 10: 

     vc=[[IndProjectViewController alloc]initWithNibName:@"IndProjectViewController" bundle:nil]; 
     self.navigationItem.title = @"Project"; 
     vc.view.frame=CGRectMake(0, 0,_InnerContentView.frame.size.width,_InnerContentView.frame.size.height-self.tabBar.frame.size.height); 

     [_InnerContentView addSubview:vc.view]; 
     [self.view addSubview:_InnerContentView]; 
     break; 

    case 11: 
     vc=[[IndTasksViewController alloc]initWithNibName:@"IndTasksViewController" bundle:nil]; 
     self.navigationItem.title = @"Task"; 
     vc.view.frame=CGRectMake(0, 0,_InnerContentView.frame.size.width,_InnerContentView.frame.size.height-self.tabBar.frame.size.height); 
     [_InnerContentView addSubview:vc.view]; 
     [self.view addSubview:_InnerContentView]; 
     break; 
    case 12: 
     vc=[[IndDocumentsViewController alloc]initWithNibName:@"IndDocumentsViewController" bundle:nil]; 
     self.navigationItem.title = @"Documents"; 
     vc.view.frame=CGRectMake(0, 0,_InnerContentView.frame.size.width,_InnerContentView.frame.size.height-self.tabBar.frame.size.height); 

     [_InnerContentView addSubview:vc.view]; 
     [self.view addSubview:_InnerContentView]; 

     break; 

}} 

here을 볼 수 있습니다. 그것이 내가 자주 자신을 발생하는 바보 같은 실수의로

완료하는 .m 및 .H 파일 코드의 기능은 다음 확인 문제를 해결할 것의 UITabBar의 위양 방법으로 않는 다음과 같은 추가

+0

당신이 논문의 전망을하고 싶지 않는 상호 작용의 어떤 종류의? 어떤 컨트롤러, 탭 막대가있는 컨트롤러 또는 하위보기로 추가 할보기가있는 컨트롤러는 하위보기의 작업에 응답 하시겠습니까? – rdelmar

+0

'InnerContentView' 내부의 서브 뷰 – hii

+0

은 vc.view가 InnerContentView 내부에서 잘로드되지만 vc.view는 터치 이벤트 나 상호 작용을받지 못합니다. – hii

답변

0

here을 볼 수 있습니다. 이 모양을 추가 한 후

_InnerContentView.frame=CGRectMake(x, y,self.view.frame.size.width,self.view.frame.size.height-self.tabBar.frame.size.height-y); 

:

- (void)tabBar:(UITabBar *)tabBar didSelectItem:(UITabBarItem *)item{ 
[_InnerContentView removeFromSuperview]; 
_InnerContentView = nil; 
_InnerContentView=[[UIView alloc]init]; 
_InnerContentView.frame=CGRectMake(x, y,self.view.frame.size.width,self.view.frame.size.height-self.tabBar.frame.size.height-y); 
    vc=nil; 
switch (item.tag) 
{ 
    case 10: 
     self.navigationItem.title = @"Project"; 
     vc=[[IndProjectViewController alloc]initWithNibName:@"IndProjectViewController" bundle:nil]; 
     vc.view.frame=CGRectMake(0, 0, _InnerContentView.frame.size.width,_InnerContentView.frame.size.height-self.tabBar.frame.size.height); 
     [_InnerContentView addSubview:vc.view]; 
     [self.view addSubview:_InnerContentView]; 
+0

감사! 너는 나의 하루를 구한다. – hii