das*_*ist 11 objective-c ios ios8 ios-keyboard-extension ios8-extension
在我的iOS键盘应用程序中,我目前有一个文本建议栏,就像默认的iOS 8键盘的建议栏.每当用户执行清除文本字段的操作时(例如,当某人在iMessage或Whatsapp上点击" 发送 " 时),我想清除建议栏上的所有文本.
因为点击"发送" 不是击键,我想知道在清除文本字段时是否有从键盘检测的方法.
我试过检测空文本""或新行"\n",但到目前为止这还没有奏效.
编辑:我知道这可以通过第三方iOS键盘,如这里所见(这是来自Themeboard)
在点击发送之前,请注意建议栏中的文字.

点击"发送"后立即.建议栏已清除.

Ben*_*ous 11
在Messages中按下发送按钮时,textDidChange:将在您的UIInputViewController子类上调用回调.此时,子类的属性documentContextAfterInput和documentContextBeforeInput属性都将为nil或空字符串.虽然你不知道为什么在文本框被清除,你也许可以推断大多数情况下,这种情况发生时,你应该清楚你目前的下一个单词预测.UIInputViewControllertextDocumentProxy
- (void)textDidChange:(id<UITextInput>)textInput
{
if ((!self.textDocumentProxy.documentContextBeforeInput && !self.textDocumentProxy.documentContextAfterInput) || ([self.textDocumentProxy.documentContextBeforeInput isEqualToString:@""] && [self.textDocumentProxy.documentContextAfterInput isEqualToString:@""])){
//Implement code to clear the banner
[self.keyboard.lblBanner setText: @""];
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1344 次 |
| 最近记录: |