如何在viewDidLoad时自动显示键盘?我也不想使用UITextField来显示键盘。
答案 0 :(得分:1)
在您的视图中添加UITextField并将其调用[myTextfield becomeFirstResponder];
然后将其设置为隐藏myTextfield.hidden = true
- 这样用户就永远不会看到文本字段了。
答案 1 :(得分:1)
您可以通过以下方式完成:
继承UIView(它是UIResponder的子类)
使您的UIView Subclas符合协议UIKeyInput。要做这个添加 < UIKeyInput> 在类声明和此代码中.m文件
添加此代码:
-(BOOL)hasText;
{
return YES;
}
-(void)insertText:(NSString *)text;
{
// what to do when a text is inserted
}
-(void)deleteBackward;
{
// what to do when delete is pressed
}
-(BOOL)canBecomeFirstResponder
{
// return yes if your control can become first responder and show the keyboard
return YES;
}
然后,要显示键盘,你必须简单地调用[myView becomeFirstResponder]; 刚试过,效果很好。
编辑:没有尝试过,但它应该工作不仅是子视图uiview,而且所有类型的对象都是UIView的子类,可以添加到窗口层次结构中,只需要符合UIKeyInput协议强>
答案 2 :(得分:0)
我知道没有UITextField的唯一方法是创建并添加(私有,未记录的)UIKeyBoard
类的实例。您可以在showKeyboard:animated:
方法中找到实施here。