7

私はiPhoneプログラミングに慣れていないので、助けていただければ幸いです-私はウェブ全体にいて、これに対する答えを見つけることができません。

私の現在のセットアップはこのようなものです

MainWindow.xib のナビゲーション コントローラー > MainWindow.xib のナビゲーション コントローラーのビューは RootViewController.xib を呼び出します > RootViewController.xib には単一のテーブルビューが含まれます。

次に、RootViewController.m で次のコードを使用して、ツールバーにロードできます。

UIBarButtonItem *buttonOne = [[UIBarButtonItem alloc] initWithTitle:@"One" 
     style:UIBarButtonItemStyleBordered target:self action:@selector(buttonOnePushed)];
UIBarButtonItem *buttonTwo = [[UIBarButtonItem alloc] initWithTitle:@"Two" 
     style:UIBarButtonItemStyleBordered target:self action:@selector(buttonTwoPushed)]; 

NSArray *barArray = [NSArray arrayWithObjects: buttonOne, buttonTwo, nil];
[buttonOne release];
[buttonTwo release];

[self setToolbarItems:barArray animated:YES];

[self.navigationController setToolbarHidden:NO animated:YES];

このコードはボタンに対して機能します。しかし、ボタンの代わりにセグメント化されたコントロールを追加する方法を見つけることはできません。2 つのセグメント化されたコントロールを含む配列を試しましたが、その配列をツールバーに追加できません。

ボタンを追加するために使用したのと同じ方法でセグメント化されたコントロールを追加するコードを誰かが教えてくれたら、とても感謝しています。

ありがとう、デイブ。

4

2 に答える 2

11

これは、ナビゲーションコントローラーのツールバーにセグメント化されたコントロールを追加する私のコードです。:

NSArray *segItemsArray = [NSArray arrayWithObjects: @"Settings", @"Templates", @"Notes", nil];
UISegmentedControl *segmentedControl = [[UISegmentedControl alloc] initWithItems:segItemsArray];
segmentedControl.frame = CGRectMake(0, 0, 200, 30);
segmentedControl.segmentedControlStyle = UISegmentedControlStyleBar;
segmentedControl.selectedSegmentIndex = 2;
UIBarButtonItem *segmentedControlButtonItem = [[UIBarButtonItem alloc] initWithCustomView:(UIView *)segmentedControl];
UIBarButtonItem *flexibleSpace = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemFlexibleSpace target:nil action:nil];
NSArray *barArray = [NSArray arrayWithObjects: flexibleSpace, segmentedControlButtonItem, flexibleSpace, nil];

[self setToolbarItems:barArray];
于 2011-11-15T00:26:38.350 に答える