我怎样才能在 iPhone 应用程序中做这样的事情?
我需要输入一个数字,但我想要这样的东西,而不是简单的 UITextField。
如何?
谢谢!
我同意凯文。但是,如果您决定实现自己的类似键盘的键盘,您可能不得不失去原始 iOS 键盘提供的所有这些不错的功能。
如果您希望它看起来像您发送的内容,则必须创建一个自定义 UIView。基本上为每个控件添加一组子视图(UIButtons)。然后为将通知值更改的自定义 UIView 创建一个委托。例如,这里有一些粗略的代码可以帮助您入门:
// CustomNumbersView.m
- (void)button1DidClick:(id)sender
{
[self.delegate customNumbersView:self didSelectKeyWithValue:@"1"];
}
- (void)button2DidClick:(id)sender
{
[self.delegate customNumbersView:self didSelectKeyWithValue:@"2"];
}
// MainViewController.m
- (void)viewDidLoad
{
[super viewDidLoad];
CustomNumbersView *customNubmersView = [[CustomNumbersView alloc] initWithFrame:...];
customNumbersView.delegate = self;
}
- (void)customNumbersView:(CustomNumbersView *)customNumbersView didSelectKeyWithValue:(NSString *)value
{
self.mainTextField.text = [NSString stringWithFormat:@"%@%@", self.mainTextField.text, value];
}
由于我的程序在多种情况下都需要一个,因此我编写了一个委托驱动的 KeyPad。
我已经解决了新功能
UITextField.keyboardType = UIKeyboardTypeDecimalPad;