UIToolBar

本文转发:http://blog.csdn.net/justinjing0612/article/details/9501933

UIToolbar是我们经常用的控件之一,例如:navigation bar 上面加一个UIToolbar ,或者 view 的底部加一个UIToolbar,或者在键盘的上面加一个UIToolbar等等。其实它用起来也很简单。

下面看看它怎么用:

我们先初始化一个:

[html] view plaincopy
 
  1. self.itemToolbar= [[UIToolbar alloc] initWithFrame:CGRectMake(0,0, 320, 44)]; //初始化  
  2. self.itemToolbar.tintColor=[UIColor blackColor]; //设置颜色  
  3. [self.view addSubview:self.itemToolbar];// 添加到view  


 然后给它添加items,items,可以是自己的任意一个view,例如,uitextfield,uibutton,uiimageview,或者

UIBarButtonItem。

我们先自定义一组:

[html] view plaincopy
 
  1. NSMutableArray * array = [[NSMutableArray alloc] initWithCapacity:0];  
  2.    for (int i = 0; i 3; i++)  
  3.    {  
  4.        UIBarButtonItem * item = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:                    UIBarButtonSystemItemCamera  
  5.                           target:self  
  6.                           action:nil];  
  7.        [array addObject:item];  
  8.          
  9.    }  
  10.    UIButton * btn = [UIButton buttonWithType:UIButtonTypeRoundedRect];  
  11.    btn.frame = CGRectMake(0, 0, 100, 40);  
  12.    [btn setTitle:@"测试" forState:UIControlStateNormal];  
  13.      
  14.    UIBarButtonItem * item = [[UIBarButtonItem alloc] initWithCustomView:btn];  
  15.    [array addObject:item];  


然后把我们自定义的 items 添加到uitoolbar上。

[html] view plaincopy
 
  1. self.itemToolbar.items = array;  

效果如下:


我们也可以随时改变它的items, 可以达到某些item的 隐藏和显示效果,例如我做了2个button,  功能就是 隐藏 “首页” button

点击“变换”,效果

点击“变换2”,效果

代码如下:

点击“变换”,代码

[html] view plaincopy
 
  1. -(void)chageItem{  
  2.     UIBarButtonItem * item0 = [[UIBarButtonItem alloc] initWithTitle:@"上一页" style:UIBarButtonItemStyleDone target:self action:nil];  
  3.     UIBarButtonItem * item1 = [[UIBarButtonItem alloc] initWithTitle:@"首页" style:UIBarButtonItemStyleDone target:self action:nil];  
  4.     UIBarButtonItem * item2 = [[UIBarButtonItem alloc] initWithTitle:@"下一页" style:UIBarButtonItemStyleDone target:self action:nil];  
  5.     UIBarButtonItem * spaceItem = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemFlexibleSpace target:self action:nil];  
  6.     
  7.     [self.itemToolbar setItems:[NSArray arrayWithObjects:item0, spaceItem, item1, spaceItem, item2, nil] animated:YES];  
  8. }  

点击“变换2”,代码

[html] view plaincopy
 
    1. -(void)chageItem1{  
    2.     UIBarButtonItem * item0 = [[UIBarButtonItem alloc] initWithTitle:@"上一页" style:UIBarButtonItemStyleDone target:self action:nil];  
    3.     
    4.     UIBarButtonItem * item2 = [[UIBarButtonItem alloc] initWithTitle:@"下一页" style:UIBarButtonItemStyleDone target:self action:nil];  
    5.     UIBarButtonItem * spaceItem = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemFlexibleSpace target:self action:nil];  
    6.     
    7.     [self.itemToolbar setItems:[NSArray arrayWithObjects:item0, spaceItem, spaceItem, item2, nil] animated:YES];  
1
原文地址:https://www.cnblogs.com/fantasy3588/p/5036076.html