ビューに 10 個のテキスト フィールドがあります。その中で、電話番号と郵便番号用に 2 つのテキストフィールドが必要です。電話と郵便番号のテキストフィールドをクリックすると、数字キーパッドが表示されます。
次のリンクを使用してカスタム完了ボタンを作成しました。このコードは、テキスト フィールドが 1 つしかない場合に役立ちます。テキスト フィールドが複数ある場合は失敗します。この問題を解決した人はいますか?
これがあなたのための解決策です(画面上に他のテンキー以外のテキストフィールドがある場合に最適です)。
- (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];
}
Interface Builder で各テキスト フィールドをクリックするだけで、属性ペインで Text Traits の下を確認できます。[キーボード] の下で、テキスト フィールドをクリックしたときに表示する必要があるキーパッドのタイプに合わせてカスタマイズできます。