用于iPhone中更多文本字段的数字键盘的自定义完成按钮

时间:2011-01-10 10:29:00

标签: iphone numpad

我在视图中有十个文本字段。在那我需要2个文本字段的电话和邮政编码。所以我想在点击手机和zip文本字段时显示一个数字键盘。

我使用以下link创建了自定义完成按钮。如果我只有一个文本字段,则此代码很有用,它会因多个文本字段而失败。有没有人解决了这个问题?

2 个答案:

答案 0 :(得分:2)

这是一个适合您的解决方案(如果屏幕上还有其他非数字键盘文本字段,则非常完美。)

inputAccessoryView

- (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];
}

答案 1 :(得分:0)

在Interface Builder中,只需单击每个文本字段,然后在属性窗格中查看“文本特征”下的内容。 在键盘下,您可以将其自定义为单击文本字段时可见的键盘类型。