【问题标题】:Adding buttons to navigation bar向导航栏添加按钮
【发布时间】:2009-12-14 11:05:35
【问题描述】:

是否可以使用 iPhone SDK 向导航栏添加按钮?

导航栏中已经有 2 个按钮,分别是 leftBarButton 和 rightBarButton。我还需要 2 个按钮。如何实施?

我不需要将它们包含在导航栏本身中。但由于应用程序只包含一个表格,我认为它不能在其他地方给出。

【问题讨论】:

    标签: iphone navigation uinavigationbar


    【解决方案1】:

    您可以使用UISegmentedControl。查看UICatalog 代码示例以检查其在导航栏中的用法。

    这里是一些示例代码:

           - (void)viewDidLoad {
    [super viewDidLoad];
    
     UISegmentedControl *segmentedControl = [[UISegmentedControl alloc] initWithItems:
                              [NSArray arrayWithObjects:
                               [UIImage imageNamed:@"up.png"],
                               [UIImage imageNamed:@"down.png"],
                               nil]];
          [segmentedControl addTarget:self action:@selector(segmentAction:) forControlEvents:UIControlEventValueChanged];
          segmentedControl.frame = CGRectMake(0, 0, 90, 35);
          segmentedControl.segmentedControlStyle = UISegmentedControlStyleBar;
          segmentedControl.momentary = YES;
    
          UIBarButtonItem *segmentBarItem = [[UIBarButtonItem alloc] initWithCustomView:segmentedControl];
            [segmentedControl release];
    
          self.navigationItem.rightBarButtonItem = segmentBarItem;
            [segmentBarItem release];
    }
    
        - (void)segmentAction:(id)sender{
    
          if([sender selectedSegmentIndex] == 0){
           //do something with segment 1
           NSLog(@"Segment 1 preesed");
          }else{
           //do something with segment 2
           NSLog(@"Segment 2 preesed");
          }
        }
    

    【讨论】:

    • 通过这种方法,是否可以在导航栏上添加2个以上的按钮???
    • 您可以添加多个可以根据需要在其中执行操作的段。检查 UICatalog 代码示例,您将看到它在 iphone 模拟器中运行,有两个选项。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-12-23
    • 1970-01-01
    • 1970-01-01
    • 2012-08-21
    • 2018-07-21
    • 2014-06-29
    • 1970-01-01
    相关资源
    最近更新 更多