1

也许一个愚蠢的问题,但我必须尽快做到这一点。我的问题是:从已经被称为viewcontroller导入的视图控制器调用一个tabbar视图控制器?

我有四个的TabBar控制器A,B,C,D这些在导航栏中输入一个视图控制器(假设名字按钮控制器)。

因此,A,B,C,D正在导入这个按钮视图控制器,如#import buttonViewController.h在A,B,C,D tabbar controller的每个.h文件中。

现在的问题是,在buttonViewController我有一个按钮,该操作调用“A”tabbar controller或“B”,“C”或“D”tabbar controller

我已在每个A,B,C,D tabbarcontroller中添加buttonViewController

我该怎么做?

回答

0

哈哈哈.....它是如此多的乐趣时,我解决我it.whatever解决了不同的方式这个问题,我没有使用滚动视图按钮控制器,控制器只是,在每个控制器我已经功能滚动视图中的按钮创建和按钮的操作我只是更改选定的TabBar控制器的索引。

-(void)viewDidload

我写了这个代码

 UIView *scrollViewBackgroundView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 320, 45)]; 
scrollViewBackgroundView.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"topmenu_bg.png"]]; 

menuScrollView = [[UIScrollView alloc] initWithFrame:CGRectMake(5,0,320,40)]; 
menuScrollView.showsHorizontalScrollIndicator = FALSE; 
menuScrollView.showsVerticalScrollIndicator = FALSE; 
menuScrollView.bounces = TRUE; 
[scrollViewBackgroundView addSubview:menuScrollView]; 
[self.view addSubview:scrollViewBackgroundView]; 

[self createMenuWithButtonSize:CGSizeMake(92.0, 30.0) withOffset:5.0f noOfButtons:7]; 

这里的按钮,建立和行动

-(void)mybuttons:(id)sender{  
NSLog(@"mybuttons called"); 
UIButton *button=(UIButton *)sender; 
NSLog(@"button clicked is : %iBut \n\n",button.tag); 
int m = button.tag; 
for(int j=0;j<8;j++){ 
    if(button.tag == m){ 
     self.tabBarController.selectedIndex = m; 
     [button setBackgroundImage:[UIImage imageNamed:@"btn_topmenu_hover.png"] forState:UIControlStateHighlighted]; //sets the background Image]    
    } 
    if(button.tag != m){ 
     [button setBackgroundImage:[UIImage imageNamed:@"btn_topmenu_normal.png"] forState:UIControlStateNormal]; //sets the background Image] 
    } 
} 
}  

-(void)createMenuWithButtonSize:(CGSize)buttonSize withOffset:(CGFloat)offset noOfButtons:(int)totalNoOfButtons{ 

NSLog(@"inserting into the function for menu bar button creation"); 
for (int i = 0; i < totalNoOfButtons; i++) { 

    UIButton *button = [[UIButton buttonWithType:UIButtonTypeCustom] retain]; 
    [button addTarget:self action:@selector(mybuttons:) forControlEvents:UIControlEventTouchUpInside]; 
    (button).titleLabel.font = [UIFont fontWithName:@"Arial" size:12]; 
    if(i==0){ 
     [button setTitle:[NSString stringWithFormat:@"Dashboard"] forState:UIControlStateNormal];//with title 
     [button setBackgroundImage:[UIImage imageNamed:@"btn_topmenu_hover.png"] forState:UIControlStateNormal]; //sets the background Image] 
    } 
    if(i==1){ 
     [button setTitle:[NSString stringWithFormat:@"Order"] forState:UIControlStateNormal];//with title 
     [button setBackgroundImage:[UIImage imageNamed:@"btn_topmenu_normal.png"] forState:UIControlStateNormal]; //sets the background Image] 

    } 
    if(i==2){ 
     [button setTitle:[NSString stringWithFormat:@"Product"] forState:UIControlStateNormal];//with title 
     [button setBackgroundImage:[UIImage imageNamed:@"btn_topmenu_normal.png"] forState:UIControlStateNormal]; //sets the background Image] 

    } 
    if(i==3){ 
     [button setTitle:[NSString stringWithFormat:@"Customers"] forState:UIControlStateNormal];//with title 
     [button setBackgroundImage:[UIImage imageNamed:@"btn_topmenu_normal.png"] forState:UIControlStateNormal]; //sets the background Image] 

    } 
    if(i==4){ 
     [button setTitle:[NSString stringWithFormat:@"Content"] forState:UIControlStateNormal];//with title 
    } 
    if(i==5){ 
     [button setTitle:[NSString stringWithFormat:@"Site Analysis"] forState:UIControlStateNormal];//with title 
     [button setBackgroundImage:[UIImage imageNamed:@"btn_topmenu_normal.png"] forState:UIControlStateNormal]; //sets the background Image] 

    } 
    if(i==6){ 
     [button setTitle:[NSString stringWithFormat:@"Store Settings"] forState:UIControlStateNormal];//with title 
     [button setBackgroundImage:[UIImage imageNamed:@"btn_topmenu_normal.png"] forState:UIControlStateNormal]; //sets the background Image] 

    } 
    if(i==7){ 
     [button setTitle:[NSString stringWithFormat:@"CMS Settings"] forState:UIControlStateNormal];//with title 
     [button setBackgroundImage:[UIImage imageNamed:@"btn_topmenu_normal.png"] forState:UIControlStateNormal]; //sets the background Image] 

    } 
    button.frame = CGRectMake(i*(offset+buttonSize.width), 6.0, buttonSize.width, buttonSize.height); 
    button.clipsToBounds = YES; 
    button.showsTouchWhenHighlighted=YES; 
    button.layer.cornerRadius = 5;//half of the width 
    button.layer.borderColor=[UIColor clearColor].CGColor; 
    button.layer.borderWidth=0.0f; 
    button.tag=i; 
    [menuScrollView addSubview:button]; 
} 
menuScrollView.contentSize=CGSizeMake((buttonSize.width + offset) * totalNoOfButtons, buttonSize.height); 
[self.view addSubview:menuScrollView]; 

} 
相关问题