2011-01-10 46 views
0

我在視圖中有十個文本字段。在那我需要2個textfield的手機和郵政編碼。所以我想在點擊手機和郵編文本框時顯示一個數字鍵盤。用於iPhone中更多文本框的數字鍵盤的自定義完成按鈕

我使用以下link創建了自定義完成按鈕。如果我只有一個文本字段,則此代碼非常有用,它會失敗並顯示多個文本字段。有沒有人解決過這個問題?

回答

0

在Interface Builder中,只需點擊每個文本字段,然後在屬性窗格中查看文本特徵。 在鍵盤下,您可以將其自定義爲單擊文本字段時所需的任何類型的鍵盤。

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