Изменение поведения редактирования
Можно управлять или увеличить пользователя, редактирующего путем реализации делегата редактирования веб-представления, объект, соответствующий протоколу WebEditingDelegate. Делегат редактирования может получить, должен сообщения прежде или сделал сообщения после действия редактирования. Если Вы хотите изменить поведение редактирования значения по умолчанию, Как правило, Вы реализуете делегата редактирования.
Если методы
Вы реализуете, должен методы, если Вы хотите управлять пользователем, редактирующим действия — эти сообщения инициируются пользовательским действием не путем простого вызова методов редактирования WebView программно. Должен методы иметь форму webView:should...
и может возвратиться YES
разрешать действие или NO
запрещать действие. Дополнительно, делегат может принять альтернативные меры и возврат NO
таким образом, отправитель не принимает дополнительные меры.
Например, можно управлять вставкой текста путем реализации webView:shouldInsertText:replacingDOMRange:givenAction:
метод. В этом примере пользователь может использовать клавишу Shift для изменения вставки:
- (BOOL)webView:(WebView *)webView shouldInsertText:(NSString *)text replacingDOMRange:(DOMRange *)range givenAction:(WebViewInsertAction)action |
{ |
if ([self shiftKeyIsDown]) { |
NSString *string = [NSString stringWithFormat:@"Big-%@", text]; |
[webView replaceSelectionWithText:string]; |
DOMRange *range = [webView selectedDOMRange]; |
[range collapse:NO]; |
[webView setSelectedDOMRange:range affinity:NSSelectionAffinityUpstream]; |
return NO; |
} |
return YES; |
} |
Сделал методы
Делегат редактирования веб-представления автоматически регистрируется для получения уведомления о редактировании действий. Делегат редактирования веб-представления отправляется a webViewDid...
уведомление — где отправитель является объектом веб-представления — после действия, имеет место.