2016-06-22 18 views
3

Ich versuche, Rechtschreibung App zu erstellen, aber ich steckte. Der Benutzer wird ein Wort hören und versuchen, es zu schreiben. Ich versuche, zu jedem Zeichen auf UITextField separat zu unterstreichen. Jede Unterstreichung gibt dem Benutzer einen Hinweis darauf, wie viele Zeichen in einem Wort vorkommen. Problem ist, dass einige Buchstaben wie "ich", "l" so nah beieinander sind und ich nicht die gleiche Größe unterstreichen kann. Ich konnteWie ändere ich leere Leerzeichen Länge zwischen den Zeichen auf UITextField

NSMutableAttributedString *attributedString = [[NSMutableAttributedString alloc] initWithString:strText]; 
[attributedString addAttribute:NSUnderlineStyleAttributeName 
         value:@(13) 
         range:NSMakeRange(0,[strText length])]; 

txtTexts.attributedText = attributedString; 

mit diesen leeren Rohling Länge zwischen den Zeichen auf UITextField ändern, aber es für ganzes Textfeld mit gleicher Länge verändern. Ich brauche für jeden Brief eine andere Länge. Es sieht gut aus mit ein paar Worte wie diese

enter image description here

Aber es ist nicht in Ordnung mit Buchstaben wie „i“, weil sie näher zueinander. enter image description here

Unterstriche sind UIView übrigens. Aber ich bin offen für jeden Rat.

+1

Sie könnten eine monospaced Schriftart verwenden. – Code

+0

Danke. Es ist sehr nützlich @Code –

Antwort

2

Dies wird durch die neue Schriftart SF verursacht. Sie können monospaced Schriftart verwenden.

UIFont.monospacedDigitSystemFontOfSize(, weight:) 
+0

Vielen Dank. Ich war zu tief und verpasste so eine einfache Lösung. –