Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/iphone/43.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/xslt/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
iPhone SDK NumberPad自定义输入查看完成按钮_Iphone_Uitextfield_Uikeyboard - Fatal编程技术网

iPhone SDK NumberPad自定义输入查看完成按钮

iPhone SDK NumberPad自定义输入查看完成按钮,iphone,uitextfield,uikeyboard,Iphone,Uitextfield,Uikeyboard,目前我有一个textfield,它可以打开一个NumberPad键盘进行输入 我想要NumberPad键盘布局,但我需要一个按钮来让响应者退出 是否有方法对UITextField进行编码,使其具有一个NumberPad键盘,并将键盘左侧空白处替换为“完成”、“发送”或“转到”按钮 还是需要为UITextField创建自定义inputView 我原以为,既然在数字键盘上有一个空白键,苹果公司会让它在某些方面发挥作用。您现在需要自定义inputview,并将其分配给文本字段的inputview属性。

目前我有一个textfield,它可以打开一个NumberPad键盘进行输入

我想要NumberPad键盘布局,但我需要一个按钮来让响应者退出

是否有方法对UITextField进行编码,使其具有一个NumberPad键盘,并将键盘左侧空白处替换为“完成”、“发送”或“转到”按钮

还是需要为UITextField创建自定义inputView


我原以为,既然在数字键盘上有一个空白键,苹果公司会让它在某些方面发挥作用。

您现在需要自定义inputview,并将其分配给文本字段的inputview属性。我目前正在研究它,但这是正确的,被认可的方法。不过,仅仅更改一个按钮似乎有些过分。

您现在需要自定义inputview,并将其指定给文本字段的inputview属性。我目前正在研究它,但这是正确的,被认可的方法。不过,仅仅更改一个按钮似乎有些过分。

只需尝试使用一个带有“完成”按钮的
UIToolBar
,作为文本字段的
inputAccessoryView
。在按钮单击事件中,提供关闭键盘的代码。我想那应该适合你


或者,如果您想在键盘上绘制一个自定义按钮,您可以在此处搜索以获得解决方案,只需尝试使用带有“完成”按钮的
UIToolBar
,作为文本字段的
inputAccessoryView
。在按钮单击事件中,提供关闭键盘的代码。我想那应该适合你


或者,如果您希望在键盘上绘制自定义按钮,您可以在此处搜索以获得解决方案

如果您使用phonePad,则需要空按钮。但是,您可以使用“应用”和“取消”按钮添加
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];
}


如果使用phonePad,则需要空按钮。但是,您可以使用“应用”和“取消”按钮添加
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];
}

已更新iOS4.0的内容已更新iOS4.0的内容