Starting with iOS 3.2, you can attach any UIViewto yours UITextField, which will be used as a keyboard:
myTextField.inputView = myFakeKeyboard;
You can also attach a toolbar above the keyboard (system or user):
myTextField.inputAccessoryView = myToolbar;
, 0-9, Backspace, UIKeyboardTypeDecimalPad UITextField. iOS 4.1, , , .