iOS - 工具栏

  • Toolbar的使用

    如果我们想根据当前视图操作某些东西,我们可以使用工具栏。
    示例是带有收件箱项目的电子邮件应用程序,其中包含删除、收藏、回复等选项。它如下所示。
    iOS 教程
  • 重要属性

    • 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 教程
    单击工具 1 和工具 2 栏按钮,我们得到以下内容 -
    iOS 教程