通过纯代码实现自定义键盘工具条,首先新建一个继承UIToolbar的工具条类keyToolbar。
1,初始化工具条方法。
- (id)initWithFrame:(CGRect)frame
{
self = [super initWithFrame:frame];
if (self) {
_previousBtn = [[UIBarButtonItem alloc]initWithTitle:@"上一步" style:UIBarButtonItemStyleBordered target:nil action:@selector(previous)];
_nextBtn = [[UIBarButtonItem alloc]initWithTitle:@"下一步" style:UIBarButtonItemStyleBordered target:nil action:@selector(next)];
_doneBtn = [[UIBarButtonItem alloc]initWithTitle:@"完成" style:UIBarButtonItemStyleBordered target:nil action:@selector(done)];
UIBarButtonItem *flexSpace = [[UIBarButtonItem alloc]initWithBarButtonSystemItem:UIBarButtonSystemItemFlexibleSpace target:nil action:nil];
self.barStyle = UIBarButtonItemStyleBordered;
[self sizeToFit];
self.autoresizingMask = UIViewAutoresizingFlexibleWidth;
[self setItems:[NSArray arrayWithObjects:_previousBtn, _nextBtn,flexSpace,_doneBtn, nil]];
}
return self;
}
2,按钮的代理方法。
- (void) previous {
//NSLog(@"点击了上一步");
if ([_ToolDelegate respondsToSelector:@selector(keyToolbar:buttonType:)]) {
[_ToolDelegate keyToolbar:self buttonType:kKeyboardToolButtonTypePrevious];
}
}
- (void) next {
//NSLog(@"点击了下一步");
if ([_ToolDelegate respondsToSelector:@selector(keyToolbar:buttonType:)]) {
[_ToolDelegate keyToolbar:self buttonType:kKeyboardToolButtonTypeNext];
}
}
- (void) done {
//NSLog(@"点击了完成");
if ([_ToolDelegate respondsToSelector:@selector(keyToolbar:buttonType:)]) {
[_ToolDelegate keyToolbar:self buttonType:kKeyboardToolButtonTypeDone];
}
}