Sid*_*th 9 iphone objective-c interface-builder uitextfield
在我的应用程序中,我有一个文本字段,从用户输入一些数字,所以我将键盘类型设置为"数字键盘"但现在我被困在如何用户完成输入时我应该解雇它.我知道我必须使用委托方法"textfieldShouldReturn",但问题是数字键盘没有返回键.所以是否有必要在键盘上添加自定义完成键或还有其他方法?
Lud*_*uda 43
另一个解决方案 - 添加inputAccessoryView到yourNumberTextFiled

- (void)viewDidLoad
{
[super viewDidLoad];
UIToolbar* numberToolbar = [[UIToolbar alloc]initWithFrame:CGRectMake(0, 0, 320, 50)];
numberToolbar.barStyle = UIBarStyleBlackTranslucent;
numberToolbar.items = [NSArray arrayWithObjects:
[[UIBarButtonItem alloc]initWithTitle:@"Cancel" style:UIBarButtonItemStyleBordered target:self action:@selector(cancelNumberPad)],
[[UIBarButtonItem alloc]initWithBarButtonSystemItem:UIBarButtonSystemItemFlexibleSpace target:nil action:nil],
[[UIBarButtonItem alloc]initWithTitle:@"Apply" style:UIBarButtonItemStyleDone target:self action:@selector(doneWithNumberPad)],
nil];
[numberToolbar sizeToFit];
numberTextField.inputAccessoryView = numberToolbar;
}
-(void)cancelNumberPad{
[numberTextField resignFirstResponder];
numberTextField.text = @"";
}
-(void)doneWithNumberPad{
NSString *numberFromTheKeyboard = numberTextField.text;
[numberTextField resignFirstResponder];
}
Run Code Online (Sandbox Code Playgroud)
您需要添加背景点按
-(IBAction)backGroundTap:(id)sender
Run Code Online (Sandbox Code Playgroud)
在点h然后在点m文件中
-(IBAction)backGroundTap:(id)sender
[nameField resignFirstResponder];
[numberField resignFirstResponder];
Run Code Online (Sandbox Code Playgroud)