vibracion teclados teclado tamaño para descargar color cambiar aumentar activar iphone cocoa-touch ipad uikit keyboard

teclados - Mostrar el teclado suave de iPhone aunque esté conectado un teclado de hardware



teclado iphone descargar (4)

Como tengo el mismo problema, la solución más cercana que he encontrado es usar la aplicación de Erica Sadun llamada KeysPlease que está disponible a través de Cydia y Modmyi. Su descripción es "Usar soft kb incluso cuando está conectado a BT kb".

Además, he descubierto que si tiene un teclado físico también conectado, en mi caso a través del teclado del iPad, puede abrir el teclado con una tecla que parece corresponderse con la tecla de expulsión de un teclado bluetooth. Tal vez hay una forma de inyectar esta tecla como si estuviera presionada en un teclado conectado?

Realmente desearía que hubiera una solución de codificación más oficial para esto.

Mi aplicación para iPad usa un "dispositivo" externo que actúa como un teclado de hardware. Pero, en algún punto de la configuración, necesito ingresar texto y no puedo usar el "dispositivo" ("dispositivo" no es un teclado). Entonces, ¿hay alguna forma de forzar el teclado blando, incluso si tengo un teclado de hardware conectado?


Cuando mi aplicación conecta el dispositivo bluetooth, el teclado no se muestra. Intento establecer forzar el marco de la entrada AccessoryView como dice Brian Robbins. No funcionó.

Luego uso una forma estúpida de resolver. Al hacer clic en el campo de texto o en la vista de texto una vez más, me aparece el teclado. Así que solo necesito simular el toque en el campo de texto o en la vista de texto una vez, funciona.

Si quieres simular un toque, mira esto. https://github.com/HUYU2048/PTFakeTouch


No hay forma de hacer esto con el SDK actual. Por favor, avísale a Apple a través del Bug Reporter .


Sí. Hemos hecho esto en algunas de nuestras aplicaciones cuando el usuario tiene un "teclado" de escáner Bluetooth emparejado con el dispositivo. Lo que puede hacer es asegurarse de que textField tenga inputAccessoryView y forzar el frame de inputAccessoryView. Esto hará que el teclado se muestre en la pantalla.

Agregamos las siguientes dos funciones a nuestro AppDelegate. La variable ''inputAccessoryView'' es una UIView * que hemos declarado en nuestro delegado de aplicación:

//This function responds to all textFieldBegan editing // we need to add an accessory view and use that to force the keyboards frame // this way the keyboard appears when the scanner is attached -(void) textFieldBegan: (NSNotification *) theNotification { UITextField *theTextField = [theNotification object]; // NSLog(@"textFieldBegan: %@", theTextField); if (!inputAccessoryView) { inputAccessoryView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, navigationController.view.frame.size.width, 1)]; } theTextField.inputAccessoryView = inputAccessoryView; [self performSelector:@selector(forceKeyboard) withObject:nil afterDelay:0]; } //Change the inputAccessoryView frame - this is correct for portrait, use a different // frame for landscape -(void) forceKeyboard { inputAccessoryView.superview.frame = CGRectMake(0, 759, 768, 265); }

Luego, en nuestra aplicaciónDinFinishLaunching agregamos este observador de notificación para que pudiéramos obtener un evento cada vez que un campo de texto comenzara a editarse

//Setup the textFieldNotifications [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(textFieldBegan:) name:UITextFieldTextDidBeginEditingNotification object:nil];

¡Espero que ayude!