2011-03-10 5 views
24

corrección automática de la UITextField se estrella mi aplicación en el simulador con iOS 4.3 SDK tipo de generación. Funciona bien en el dispositivo y en el simulador con iOS 4.2 sdk.UITextField accidente de corrección automática en iOS 4.3 en el simulador

¿Alguien más está experimentando este problema? Estoy pensando que es un error con el 4.3 SDK?

Tan pronto como escribo el segundo caracter. Seguimiento de la pila

#0 0x01c01000 in objc_assign_ivar() 
#1 0x03b7ec34 in -[AppleSpell init]() 
#2 0x007e7538 in -[UITextChecker _checker]() 
#3 0x007e8de9 in -[UITextChecker checkSpellingOfString:startingAt:language:wrap:correction:]() 
#4 0x0b335725 in TIInputManagerZephyr::lookup_spellcheck_candidates(KB::String const&)() 
#5 0x0b3353f3 in TIInputManagerZephyr::lookup_static_dynamic_candidates(KB::String const&, KB::String const&, KB::Vector<KB::FPoint> const&, bool)() 
#6 0x0b332b2b in TIInputManager::lookup()() 
#7 0x0b332e18 in TIInputManager::autocorrection()() 
#8 0x0b34a06b in -[TIKeyboardInputManagerZephyr autocorrection]() 
#9 0x005cfbe8 in -[UIKeyboardImpl generateCandidatesWithCompletions:]() 
#10 0x005cfc3b in -[UIKeyboardImpl generateCandidates]() 
#11 0x005dca23 in -[UIKeyboardImpl addInputString:fromVariantKey:]() 
#12 0x005de71b in -[UIKeyboardImpl handleKeyEvent:]() 
#13 0x0070a2ee in -[UIKeyboardLayoutStar sendStringAction:forKey:]() 
#14 0x0070ed19 in -[UIKeyboardLayoutStar touchUp:]() 
#15 0x005ebda2 in -[UIKeyboardLayout touchesEnded:withEvent:]() 
#16 0x004b8ded in -[UIWindow _sendTouchesForEvent:]() 
#17 0x00499c37 in -[UIApplication sendEvent:]() 
#18 0x0049ef2e in _UIApplicationHandleEvent() 
#19 0x02011992 in PurpleEventCallback() 
#20 0x0176a944 in __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE1_PERFORM_FUNCTION__() 
#21 0x016cacf7 in __CFRunLoopDoSource1() 
#22 0x016c7f83 in __CFRunLoopRun() 
#23 0x016c7840 in CFRunLoopRunSpecific() 
#24 0x016c7761 in CFRunLoopRunInMode() 
#25 0x020101c4 in GSEventRunModal() 
#26 0x02010289 in GSEventRun() 
#27 0x004a2c93 in UIApplicationMain() 

también a veces, verá una huella mucho más simple que simplemente comienza a principal, y luego cesa de inmediato en objc_assign_ivar. Esto también ocurre al escribir en un campo de texto, como UISearchBar.

+0

Sí, y pensé que estaba solo. Para aquellos de ustedes en león, por favor archive en canales oficiales; obtendrá más atención que desde el sitio web estándar de informes de errores. – FeifanZ

Respuesta

34

En el simulador, abra Configuración -> Teclado y apagar todas las opciones. Esto evita el bloqueo (hasta que se solucione el error).

+0

Gracias, tengo este problema resuelto en Lion GM + Xcode 4.2 Vista previa 4. Simulator se está ejecutando iOS 4.3 –

+0

Aún recibiendo en Lion 10.7.2 + Xcode 4.2 GM, Simulator con iOS 4.3, pero funciona bien en el simulador iOS5. – bentford

+0

yup. trabajó para mi. – debug

3

Por favor, presentar un informe de error en http://bugreport.apple.com si siente que hay un error en el SDK.

Pero, para responder a usted, yo no estoy experimentando el mismo problema, por lo que podría ser un problema en el código. ¿Podrías verificar el seguimiento de la pila antes del accidente y ver si hay algo que te falta que de alguna manera funcionó en las versiones anteriores del sistema operativo?

Referencia: iOS Development guide

7

estoy experimentando el mismo problema, ejecuta el simulador de 4.3 en Lion Developer Preview 2. Este es un error en el simulador de León. He desactivado temporalmente la autocorrección (setAutocorrectionType: UITextAutocorrectionTypeNo).

+0

Esto funcionó, últimamente lo que parece hacer el truco es la solución de @CraicDesign. – Schoob

+0

Mismo problema aquí usando Lion GM + Xcode 4.2 Vista previa 3. Simulator ejecuta iOS 4.3.Deshabilitar la corrección automática en mi UITextView evita que ocurra el bloqueo. –

+0

Por cierto, exactamente el mismo código se ejecuta sin ningún bloqueo en mi máquina Snow Leopard (Xcode 4.2 Preview 3 + 4.3 Simulator). –

0

Me he encontrado con este problema también. En mi situación, pude rastrearlo hasta la llamada a resignFirstResponder de un campo de texto que actualmente tiene foco.

tengo código que se ve algo como esto:

if(loginSuccess) { 
    [self.userName resignFirstResponder]; 
    [self.password resignFirstResponder]; // This is the one with focus 
} 

Ahora cuando me comentó a cabo la contraseña resignFirstResponder llamar, ya no tiene ese accidente.

Esto definitivamente es un error y se debe informar.

1

Desactivación de "auto-corrección" en la configuración del teclado simulador fijo este problema para mí.

enter image description here

6

, es necesario actualizar Simulador 4.3 siguiendo estos pasos:

  1. Va a Xcode -> Preferencias -> Descargar
  2. actualización iOS 4.3 Simulador

y Reset Simulador y ejecutarlo de nuevo. Está hecho.

Cuestiones relacionadas