2

IPhone SDK を使用してナビゲーション バーにボタンを追加することはできますか?

ナビゲーション バーには、leftBarButton と rightBarButton の 2 つのボタンが既にあります。ボタンがあと2つ欲しい。それを実装する方法は?

それらをナビゲーションバー自体に含める必要があることは必須ではありません。しかし、アプリケーションにはテーブルしか含まれていないため、他の場所で提供できるとは思いません。

4

1 に答える 1

18

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");
      }
    }
于 2009-12-14T11:09:10.613 に答える