iOS6 上的虚拟键盘错误(使用 FPC)
Posted
技术标签:
【中文标题】iOS6 上的虚拟键盘错误(使用 FPC)【英文标题】:Virtual Keyboard Bug on iOS6 (using FPC) 【发布时间】:2013-02-04 11:33:00 【问题描述】:我遇到了仅在 ios 6 上出现的虚拟键盘问题。
我有一个 UITextField,我用它来捕捉来自虚拟的键盘输入 键盘,但在 iOS 6 上它只显示一次,在键盘关闭后 第一次就不显示了。
这是我用来显示带有键盘的 TextField 的代码。
if not Assigned( keysTextField ) Then
begin
keysTextFrame := wndHandle.frame;
keysTextField := zglCiOSTextField.alloc().initWithFrame(keysTextFrame );
keysTextTraits := keysTextField;
with keysTextField, keysTextTraits do
begin
setDelegate( appDelegate );
setAutocapitalizationType( UITextAutocapitalizationTypeNone );
setAutocorrectionType( UItextAutocorrectionTypeNo );
setKeyboardAppearance( UIKeyboardAppearanceDefault );
setReturnKeyType( UIReturnKeyDone );
setSecureTextEntry( FALSE );
addTarget_action_forControlEvents( appDelegate, objcselector('textFieldEditingChanged' ), UIControlEventEditingChanged );
end;
keysTextField.setText( utf8_GetNSString( Text ) );
wndHandle.addSubview( keysTextField );
end;
if appFlags and APP_USE_ENGLISH_INPUT > 0 Then
keysTextTraits.setKeyboardType( UIKeyboardTypeASCIICapable )
else
keysTextTraits.setKeyboardType( UIKeyboardTypeDefault );
wndHandle.addSubview( keysTextField );
keysTextField.becomeFirstResponder();
这是关闭它的代码:
if Assigned( keysTextField ) Then
keysTextField.removeFromSuperview();
任何人都知道我可以尝试解决这个问题吗? 我检查了第二次,keyTextField.isFirstResponder() 返回 true, 所以它应该可以工作(并且适用于 iOS
谢谢
塞萨尔·瓦根海默
【问题讨论】:
【参考方案1】:固定更改命令
keysTextField.resignFirstResponder();
从textFieldShouldEndEditing
到textFieldDidEndEditing
!
【讨论】:
以上是关于iOS6 上的虚拟键盘错误(使用 FPC)的主要内容,如果未能解决你的问题,请参考以下文章
通过VNC连接远程服务器,然后登陆服务器上的虚拟机,出现键盘输入问题的解决方法