現在、プログラムでナビゲーション コントローラーのツールバーに を追加しUISegmentedControl
ています (以下を参照)。
このアプローチは正常に機能UISegmentedControl
します。
問題は -selectedIndex
このコントロールの を使用してデータ モデルをクエリし、「セグメント」ごとに異なるデータ ビューを表示したいのですが、selectedIndex
.
旅の途中で、Apple が提供する「Top Songs」のサンプル コードを参照してきました。このコードUISegmentedControl
では、View Controller と IB のオブジェクトを介してインターフェイスを構築します。そうすることで、彼らはのにアクセスできUISegmentedControl
ますselectedIndex
。私はプログラムで私のものを追加していますが、この自由はありません。
UISegmentedControl
ビュー コントローラで を定義する必要がありますか? もしそうなら、プログラムでメニューを作成し続けたい場合、ナビゲーション コントローラの に埋め込まれたコントロールから情報にアクセスするにはどうすればよいUIToolBar
ですか?
私は明らかに基本的な何かを欠いています。どんな支援も常に大歓迎です:)
[self.navigationController setToolbarHidden:NO];
// Set up the edit and add buttons.
self.navigationItem.leftBarButtonItem = self.editButtonItem;
UIBarButtonItem *addButton = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemAdd target:self action:@selector(insertNewObject)];
self.navigationItem.rightBarButtonItem = addButton;
[addButton release];
NSArray *tabitems = [NSArray arrayWithObjects:@"ONE", @"TWO", @"THREE", @"FOUR", nil];
UISegmentedControl *tabs = [[UISegmentedControl alloc] initWithItems:tabitems];
[tabs addTarget:self
action:@selector(pickedSegment:)
forControlEvents:UIControlEventValueChanged];
tabs.segmentedControlStyle = UISegmentedControlStyleBar;
tabs.frame = CGRectMake(60, 8, 180, 30);
tabs.selectedSegmentIndex = 0;
//[self.navigationController.navigationBar addSubview:tabs];
[self.navigationController.toolbar addSubview:tabs];
[tabs release];