Sto sviluppando un'applicazione PhoneGap per iOS e ho bisogno di sbarazzarmi della nuova barra di collegamento iOS 9. Ora sto facendo quanto segue nella - (void)viewDidLoad
metodoNascondi barra della tastiera scorciatoia per UIWebView in iOS 9
if ([self.webView respondsToSelector:@selector(inputAssistantItem)]) {
UITextInputAssistantItem *inputAssistantItem = [self.webView inputAssistantItem];
inputAssistantItem.leadingBarButtonGroups = @[];
inputAssistantItem.trailingBarButtonGroups = @[];
}
Questo nasconde Annulla/Ripristina e copia/incolla tasti ma barra di collegamento ancora presentato sulla tastiera e ha pulsanti di navigazione su di esso.
Come posso liberarmi della barra di collegamento completamente.
Grazie per il vostro aiuto!
***UPDATE 1***
Il mio codice di lavoro completo è qui sotto. Spero che questo possa aiutare qualcuno (grazie a @Clement risposta)
#import <objc/runtime.h>
- (void) hideKeyboardShortcutBar: (UIView *)view
{
for (UIView *sub in view.subviews) {
[self hideKeyboardShortcutBar:sub];
if ([NSStringFromClass([sub class]) isEqualToString:@"UIWebBrowserView"]) {
Method method = class_getInstanceMethod(sub.class, @selector(inputAccessoryView));
IMP newImp = imp_implementationWithBlock(^(id _s) {
if ([sub respondsToSelector:@selector(inputAssistantItem)]) {
UITextInputAssistantItem *inputAssistantItem = [sub inputAssistantItem];
inputAssistantItem.leadingBarButtonGroups = @[];
inputAssistantItem.trailingBarButtonGroups = @[];
}
return nil;
});
method_setImplementation(method, newImp);
}
}
}
- (void)viewDidLoad
{
[super viewDidLoad];
[self hideKeyboardShortcutBar:self.webView];
}
Questo trucco nasconderà undo/redo e pulsanti di navigazione. Ma il testo di auto-previsione sarà ancora mostrato sulla tastiera. Per nascondere barra di collegamento aggiungere completamente attributi HTML al vostro elemento di input
<input autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false" />
P.S La mia app è sulla revisione ora. Ancora non so se Apple approverà questo.
***UPDATE 2***
La mia app è stata approvata da Apple
Non è possibile, è parte della vista web. PhoneGap/Cordova usa solo l'HTML per costruire il tuo tu ui e poi viene presentato in una visualizzazione web. – rckoenes
Grazie per la risposta, rckoenes. Ma perché riesco ancora a nascondere i pulsanti di annullamento/copia/incolla? – rubanbs
prova a non inserire i campi di input all'interno di un modulo – jcesarmobile