diff --git a/ACEDrawingView/ACEDrawingLabelView.h b/ACEDrawingView/ACEDrawingLabelView.h index fcf2d8e..0c55758 100644 --- a/ACEDrawingView/ACEDrawingLabelView.h +++ b/ACEDrawingView/ACEDrawingLabelView.h @@ -287,6 +287,13 @@ */ - (void)labelViewDidEndEditing:(ACEDrawingLabelView *)label; +/** + * Occurs when the user taps the Done button while entering text. + * + * @param label A label object informing the delegate about action. + */ +- (void)labelViewDidReturn:(ACEDrawingLabelView *)label; + /** * Called just before a label is displayed. Configure values to make it look * the way you want. diff --git a/ACEDrawingView/ACEDrawingLabelView.m b/ACEDrawingView/ACEDrawingLabelView.m index c045abe..e857952 100644 --- a/ACEDrawingView/ACEDrawingLabelView.m +++ b/ACEDrawingView/ACEDrawingLabelView.m @@ -138,6 +138,7 @@ - (id)initWithFrame:(CGRect)frame self.labelTextField.tintColor = [UIColor redColor]; self.labelTextField.textColor = [UIColor whiteColor]; self.labelTextField.text = @""; + self.labelTextField.returnKeyType = UIReturnKeyDone; [self.labelTextField addTarget:self action:@selector(textFieldEditingChanged:) forControlEvents:UIControlEventEditingChanged]; self.border.strokeColor = self.borderColor.CGColor; @@ -512,6 +513,14 @@ - (void)textFieldDidBeginEditing:(UITextField *)textField [textField adjustsWidthToFillItsContents]; } +- (BOOL)textFieldShouldReturn:(UITextField *)textField +{ + if ([self.delegate respondsToSelector:@selector(labelViewDidReturn:)]) { + [self.delegate labelViewDidReturn:self]; + } + return NO; +} + #pragma mark - UITextField UIControlEvent - (void)textFieldEditingChanged:(UITextField *)textField { diff --git a/ACEDrawingView/ACEDrawingView.m b/ACEDrawingView/ACEDrawingView.m index 215178b..5133427 100644 --- a/ACEDrawingView/ACEDrawingView.m +++ b/ACEDrawingView/ACEDrawingView.m @@ -667,6 +667,11 @@ - (void)labelViewDidHideEditingHandles:(ACEDrawingLabelView *)label } } +- (void)labelViewDidReturn:(ACEDrawingLabelView *)label +{ + [self.draggableTextView hideEditingHandles]; +} + - (ACEDrawingDraggableTextTool *)draggableTextToolForLabel:(ACEDrawingLabelView *)label { for (id tool in self.pathArray) {