我正在以编程方式使用以下代码创建UIToolbar:
pickerTB = [[UIToolbar alloc]initWithFrame:CGRectMake(0, 0, 320, 44)];
[self.view addSubview:pickerTB];
如何为其添加一个按钮?它需要说“完成”,按钮必须能够稍后调用方法。
答案 0 :(得分:16)
试试这个,如果你想在uitoolbar的右侧添加DONE按钮,那么在完成按钮之前添加灵活的按钮
UIBarButtonItem *flexButton = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemFlexibleSpace target:self action:nil];
UIBarButtonItem *doneButton =[[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemDone target:self action:@selector(doneButton)];
NSArray *itemsArray = [NSArray arrayWithObjects:flexButton, doneButton, nil];
[toolbar setItems:itemsArray];
-(void)doneButton
{
}
//更改工具栏样式
[toolbar setBarStyle:UIBarStyleBlackTranslucent];
//更改栏按钮颜色
[doneButton setTintColor:[UIColor blackColor]];
答案 1 :(得分:2)
pickerTB.items = [NSArray arrayWithObjects:[[UIBarButtonItem alloc]initWithTitle:@"Done" style:UIBarButtonItemStyleDone target:self action:@selector(done:)],nil];
答案 2 :(得分:1)
此代码非常有助于将按钮添加到键盘或pickerview中的UIToolbar。
例如: 如果你想要"完成"按钮将被插入选择器视图的工具栏中。你只需要遵循以下简单的步骤。
第1步: 必须将此代码包含在" viewDidLoad"创造"完成" UIToolbar中的按钮。 " textBoxText"是文本字段的名称。
// create done button in toolbar.
doneToolbar = UIToolbar(frame: CGRectMake(0, 0, self.view.frame.size.width, 50))
doneToolbar.barStyle = UIBarStyle.Default
doneToolbar.items = [UIBarButtonItem(title: "Done", style: UIBarButtonItemStyle.Plain, target: self, action: #selector(FirstViewController.PickerDoneButtonTapped))]
doneToolbar.sizeToFit()
textBoxText.inputAccessoryView = doneToolbar
第2步: 编码"完成"的功能包含在UIToolbar中的按钮。我已经给出了如果"完成"点击按钮PickerView必须禁用。
func PickerDoneButtonTapped()
{
textBoxText.resignFirstResponder()
}
第3步: 必须在" viewDidload"
中调用该函数self.PickerDoneButtonTapped()
输出: