我怎么能在iPhone应用程序中做这样的事情?
我需要输入一个数字,但我想要这样的东西,而不是简单的UITextField。
如何?
谢谢!
答案 0 :(得分:1)
如果您希望它看起来像您发送的内容,则必须创建自定义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];
}
答案 1 :(得分:1)
我同意凯文。但是如果你决定实现自己的键盘式键盘,你可能不得不丢失原始iOS键盘提供的所有这些不错的功能。
答案 2 :(得分:0)
由于我在程序中需要多个情况,我写了delegate-driven KeyPad。
答案 3 :(得分:0)
我已经用新功能解决了
UITextField.keyboardType = UIKeyboardTypeDecimalPad;