Ответ 1
Когда кнопка "Отправить" нажата в "Сообщениях", обратный вызов textDidChange:
будет вызван в ваш подкласс UIInputViewController
. В этот момент свойства documentContextAfterInput
и documentContextBeforeInput
вашего свойства UIInputViewController
subclass textDocumentProxy
будут равно nil или пустой строке. Хотя вы не знаете, почему текстовое поле было очищено, вы, вероятно, можете сделать вывод о большинстве случаев, когда это происходит, что вы должны очистить свое текущее предсказание следующего слова.
- (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: @""];
}
}