首页 > 代码库 > UI: 使用 UIBarButtonItem 给导航栏添加按钮

UI: 使用 UIBarButtonItem 给导航栏添加按钮

问题:

希望将按钮添加到导航栏中 

 

1.导航栏属于 UINavigationBar 类,你可以再任何时候创建它,并将它添加到任意的 view 中。 

 

2.创建一个导航按钮,须要做一下工作:

   创建一个 UIBarButtonItem 实例。

  使用视图控制器的 navigationItem 属性将按钮添加到视图控制器的导航栏中,。NavigationItem 属性允许我们与导航栏进行交互。这个属性自身有两个属性,分别为rightBarButtonItem 和 leftBarButtonItem。这两个属性都属于 UIBarButtonItem 类。 

  代码:  

self.navigationItem.rightBarButtonItem = [[UIBarButtonItem alloc]initWithTitle:@"Add" style:UIBarButtonItemStylePlain target:self action:@selector(performAdd)];

我们可以创建不同的系统按钮:使用 UIBarButtonItem类的 initWithBarButtonSystemItem:target:action:初始化方法来完成这项工作。 

self.navigationItem.rightBarButtonItem = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemAdd target:selfaction:@selector(performAdd:)];
类 UIBarButtonItem 中的真正最棒的初始化方法中,其中一个是 initWithCustomView: 方法。这个方法能接受任何视图。这意味着我们甚至可以将 UISwitch作为一个按钮添加到导航栏上。这似乎看起来不怎样,但是值得一试。 
UISwitch *simpleSwitch = [[UISwitch alloc]init];    simpleSwitch.on = YES;    [simpleSwitch addTarget:self action:@selector(switchIsChanged:) forControlEvents:UIControlEventValueChanged];    self.navigationItem.leftBarButtonItem = [[UIBarButtonItem alloc]initWithCustomView:simpleSwitch];

 

UI: 使用 UIBarButtonItem 给导航栏添加按钮