UITextView avec un text de less de 10 caractères se bloque iOS 9

A partir d'iOS 9 (j'ai utilisé Xcode 7.0 beta 6 (7A192o)), une application Objective-C avec UITextView va se bloquer si le text de la vue text est inférieur à 10 caractères . L'utilisation du processeur va jusqu'à 99-100% et tout le système se bloque.

Comment reproduire:

  1. Créez une nouvelle application à affichage unique à partir du model (ou de tout autre élément).
  2. Dans le storyboard, ajoutez un UITextView avec les parameters par défaut n'importe où dans la vue principale.
  3. Définissez le text sur une string de less de 10 caractères.
  4. Lancez l'application dans le simulateur (n'importe quel appareil, tant que c'est iOS 9).
  5. Au lancement, avant d'afficher la vue unique, le système va se bloquer et l'utilisation du processeur ira au maximum pour toujours.
  6. Définissez le text sur tout autre text comportant plus de 10 caractères et l'application s'exécute correctement.

Il semble que les contraintes ou d'autres parameters n'affectent pas ce comportement.

La solution immédiate serait simplement de ne pas avoir less de 10 caractères, mais bon, c'est boiteux.

Vous pouvez consulter ce référentiel github qui montre également le problème.

J'ai également soumis un rapport de bug à Apple (bug n ° 22736256, bien que vous ne puissiez probablement pas encore le voir).

Bizarre. Punaise. Déjà.

Est-ce que quelqu'un rencontre aussi celui-ci ??

D'après les notes de version de Xcode 7.1.1, ceci devrait être corrigé maintenant:

Les storyboards et les nibs contenant des éléments UITextView entre 1 et 11 caractères ne sont plus bloqués lorsqu'ils sont chargés sur iOS. (23264732)

Il m'a fallu une demi-journée pour réduire l'erreur à un UITextView. Cela doit être le bug le plus stupide de tous les time.

Vous n'avez pas besoin de vous assurer que l'UITextView contient au less 10 caractères. Le fait d'append une valeur par défaut d'au less 10 caractères à UITextView dans Interface Builder résoudra le problème. Ensuite, vous pouvez vider l'UITextView en utilisant du code.

En passant, c'est un bug Xcode 7, pas un bug iOS9. Les nouvelles versions construites avec Xcode 7 créeront le même problème dans iOS7 et iOS8.

Reportez le coup. C'est un bug dans Xcode 7 et n'a toujours pas été corrigé.

http://xcode7criticalbug.blogspot.in/2015/10/uitextview-bug-in-xcode-ios-app-getting.html

Il peut être surmonté en paramétrant la propriété text pour UITextView.

J'ai trouvé la solution d'abord vérifier la fuite de memory et s'il vous plaît append cette ligne de code dans la class particulière.

– (void) viewWillAppear: (BOOL) animé {

[super viewWillAppear: YES];

}

Ceci est utile pour moi mon problème est résolu.