-(void)viewDidLoad{
if (keyboardToolbar == nil) {
keyboardToolbar = [[UIToolbar alloc] initWithFrame:CGRectMake(0, 0, self.view.bounds.size.width, 44)];
keyboardToolbar.barStyle = UIBarStyleBlackTranslucent;
NSArray *segItems = [NSArray arrayWithObjects:@"戻る", @"次へ", nil];
segment = [[UISegmentedControl alloc] initWithItems:segItems];
[segment addTarget:self action:@selector(doSegmentAction:) forControlEvents:UIControlEventValueChanged];
segment.momentary = YES;
[segment setSegmentedControlStyle:UISegmentedControlStyleBar];
[segment setWidth:65 forSegmentAtIndex:0];
[segment setWidth:65 forSegmentAtIndex:1];
segment.tintColor = [UIColor darkGrayColor];
UIBarButtonItem *select = [[UIBarButtonItem alloc] initWithCustomView:segment];
UIBarButtonItem *extraSpace = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemFlexibleSpace target:nil action:nil];
UIBarButtonItem *doneButton = [[UIBarButtonItem alloc] initWithTitle:@"完了" style:UIBarButtonItemStyleBordered target:self action:@selector(resignKeyboard:)];
doneButton.width = 60;
[keyboardToolbar setItems:[[NSArray alloc] initWithObjects:doneButton, extraSpace, select, nil]];
}
ヘッダに
UIToolBar *keyboardToolbar;
UISegmentedControl *segment;
-(void)resignKeyboard:(id)sender;
-(void)doSegmentAction:(id)sender;
宣言済みであること。
TextFieldなどがviewDidLoad時点で作られているのならば、viewDidLoad内に、別のタイミングで作られるのならば生成後に、
capacity.inputAccessoryView = keyboardToolbar;
※capacityはtextFieldなどのキーボードを表示させるもの
-(void)resignKeyboard:(id)sender{
//capacityを閉じる処理
[capacity resignFirstResponder]
}
-(void)doSegmentAction:(id)sender{
//セレクトボタンを押したときの処理
}
を書く。