2014-12-13 12 views
5

Sto usando questa soluzione (https://stackoverflow.com/a/25786928) per rilevare tutte le tastiere personalizzate attivati ​​nel settins app (iOS 8):Come rilevare che tastiera personalizzata (iOS 8) è attualmente in uso per l'immissione del testo

- (void)printoutAllActiveKeyboards { 
    // Array of all active keyboards 
    NSArray *keyboards = [[[NSUserDefaults standardUserDefaults] dictionaryRepresentation] objectForKey:@"AppleKeyboards"]; 
    for (NSString *keyboard in keyboards) 
     NSLog(@"Custom keyboard: %@", keyboard); 
} 

Ma questo non è abbastanza per il mio progetto - ho bisogno di sapere quale tastiera personalizzata è attualmente scelta dall'utente per l'inserimento del testo. Ho uno stackoverflow di ricerca e altre risorse ma non ho trovato alcuna soluzione per questo. C'è un modo per rilevare nella mia app quale tastiera personalizzata è attualmente selezionata per l'immissione di testo?

Grazie!

risposta

-1

Date un'occhiata a questo metodo UIApplication API per disabilitare le tastiere personalizzate:

- (BOOL)application:(UIApplication *)application shouldAllowExtensionPointIdentifier:(NSString *)extensionPointIdentifier { 
    if ([extensionPointIdentifier isEqualToString: UIApplicationKeyboardExtensionPointIdentifier]) { 
     return NO; 
    } 
    return YES; 
} 

Forse si può modificare il valore di UIApplicationKeyboardExtensionPointIdentifier per soddisfare le vostre esigenze

+0

La domanda è su come sapere quale tastiera personalizzata è attualmente scelto. Non disabilitare la tastiera personalizzata. Questa API aiuta solo a disattivare solo la tastiera personalizzata. – TomSawyer

Problemi correlati