iOS - Toolbar(工具列)


toolbar(工具列)使用範例

IOS 中如果我們想操縱一些東西,基於目前的檢視,我們可以使用工具列(toolbar)。

例如將電子郵件應用程式的收件箱項選擇刪除,做標誌,回復等。如下所示。

iOS Tutorial

 

重要的屬性

  • barStyle

  • items

新增一個自定義的方法addToolbar

-(void)addToolbar
{
    UIBarButtonItem *spaceItem = [[UIBarButtonItem alloc] 
    initWithBarButtonSystemItem:UIBarButtonSystemItemFlexibleSpace
    target:nil action:nil];
    UIBarButtonItem *customItem1 = [[UIBarButtonItem alloc]
    initWithTitle:@"Tool1" style:UIBarButtonItemStyleBordered 
    target:self action:@selector(toolBarItem1:)];
    UIBarButtonItem *customItem2 = [[UIBarButtonItem alloc]
    initWithTitle:@"Tool2" style:UIBarButtonItemStyleDone 
    target:self action:@selector(toolBarItem2:)];
    NSArray *toolbarItems = [NSArray arrayWithObjects: 
    customItem1,spaceItem, customItem2, nil];
    UIToolbar *toolbar = [[UIToolbar alloc]initWithFrame:
    CGRectMake(0, 366+54, 320, 50)];
    [toolbar setBarStyle:UIBarStyleBlackOpaque];
    [self.view addSubview:toolbar];
    [toolbar setItems:toolbarItems];
}

為了解所執行的操作,我們新增 UILabel 在 ViewController.xib 中並建立一個 IBOutlet  的 UILabel,並將它命名為 label

我們還需要新增兩個方法以執行工具列專案的操作,如下圖所示

-(IBAction)toolBarItem1:(id)sender{
    [label setText:@"Tool 1 Selected"];
}

-(IBAction)toolBarItem2:(id)sender{
    [label setText:@"Tool 2 Selected"];    
}

 

更新ViewController.m 中的方法 viewDidLoad 如下

- (void)viewDidLoad
{
    [super viewDidLoad];
    // The method hideStatusbar called after 2 seconds
    [self addToolbar];    
    // Do any additional setup after loading the view, typically from a nib.
}

輸出

現在,當我們執行程式時,我們會得到下面的輸出。

iOS Tutorial

 

點選 tool1 和 tool2 欄按鈕,我們得到

iOS Tutorial