2015-09-16 18 views
12

Ab iOS 9 (ich verwendete Xcode 7.0 Beta 6 (7A192o)) hängt eine Objective-C-App mit UITextView , wenn der Text-Ansichtstext weniger als 10 Zeichen ist . Die CPU-Auslastung steigt auf 99-100% und das ganze System hängt.UITextView mit Text weniger als 10 Zeichen hängt iOS 9

Wie zu reproduzieren:

  1. erstellen brandneue Single Ansicht App-Vorlage (oder etwas anderes).
  2. Fügen Sie im Storyboard ein UITextView mit Standardeinstellungen überall in der Hauptansicht hinzu.
  3. Legen Sie den Text auf eine Zeichenfolge fest, die weniger als 10 Zeichen lang ist.
  4. Starten Sie die App im Simulator (jedes Gerät, solange es iOS 9 ist).
  5. Nach dem Start hängt das System, bevor die Einzelansicht angezeigt wird, und die CPU-Auslastung wird für immer auf ein Maximum reduziert.
  6. den Text zu jedem anderen Text Stellen, die mehr als 10 Zeichen sind und die App läuft correctly.a

wie Einschränkungen Looks oder andere Einstellungen dieses Verhalten nicht beeinflussen.

Die unmittelbare Lösung wäre, einfach nicht weniger als 10 Zeichen zu haben, aber, naja, das ist lahm.

Sie können überprüfen, this github repository, die auch das Problem zeigt.

Ich habe auch einen Fehlerbericht an Apple geschickt (Bug-Nr. 22736256, obwohl Sie es wahrscheinlich dort noch nicht sehen können).

Am seltsamsten. Fehler. Je.

Ist auch jemand diesem begegnet?

+5

Senden Sie den Fehler an Apple. Fügen Sie Ihre Test-App hinzu, um das Problem zu demonstrieren. – rmaddy

+1

Das ist in der Tat seltsam. –

+2

Ja, ich habe einen Fehlerbericht an Apple geschickt (Fehler Nr. 22736256, obwohl Sie ihn dort wahrscheinlich noch nicht sehen können). Wird Sie aktualisieren ... – mllm

Antwort

1

Nach der release notes of Xcode 7.1.1 dies behoben werden sollten:

Storyboards und nibs enthaltenden UITextView Elemente mit zwischen 1 und 11 Zeichen hängen nicht länger auf, wenn IOS geladen.(23264732)

8

Es dauerte einen halben Tag, um den Fehler auf ein UITextView einzugrenzen. Das muss der dümmste Käfer aller Zeiten sein.

Sie müssen nicht sicherstellen, dass die UITextView mindestens 10 Zeichen enthält. Wenn Sie dem UITextView in Interface Builder einen Standardwert von mindestens 10 Zeichen hinzufügen, wird das Problem behoben. Dann können Sie den UITextView mit Code leeren.

Übrigens ist dies ein Xcode 7 Bug, kein iOS9 Bug. Neue Builds, die mit Xcode 7 erstellt wurden, verursachen das gleiche Problem in iOS7 und iOS8.

+1

Ich habe auch gerade 3 Stunden an diesem Bug verloren. Weißt du, wenn du durch all die Verkaufsgespräche wanderst, die du in den WWDC-Videos hörst, und dann den * echten * Zustand ihrer IDE und Technologie siehst ... ist es einfach unglaublich. –

-2

Ich habe die Lösung gefunden zuerst das Speicherleck zu überprüfen und fügen Sie bitte diese Codezeile in bestimmter Klasse hinzu.

- (void) viewWillAppear: (BOOL) animiert {

[super viewWillAppear: YES];

}

Dies ist hilfreich für mich mein Problem gelöst ist.

+0

Dies wird nicht empfohlen, da Sie den 'animierten' Parameter zu' super' überschreiben. Was ist, wenn "animiert" "NEIN" sein muss? – mllm

Verwandte Themen