2010-11-25 5 views
1

Ich versuche, den gleichen Platzhalter Text in zwei verschiedenen Größen der gleichen UITextField zentriert haben.Zentrierung Platzhalter in der gleichen UITextField, aber von zwei verschiedenen Größen

Die fragliche UITextField ist 243 in Portrait und 360 in Querformat.

Wenn Sie im Portrait sind, zentriert sich der Platzhalter in der Mitte. Wenn ich zu Landscape rotiere und der UITextField größer gezeichnet wird, ist er nicht mehr zentriert. Es ist wie 25% nach links (ich rate in der Mitte der Portrait Länge)

Gibt es eine Möglichkeit, den Platzhalter jedes Mal neu zu zentrieren, wenn sich die Länge einer UITextField ändert?

Antwort

1

interessant. 5 Minuten nachdem ich diese Frage gestellt hatte, kam mir eine Idee in den Sinn.

Nachdem das Textfeld in Portrait neu gezeichnet wird ich dies tun:

Textfield.textAlignment = UITextAlignmentLeft; 
Textfield.textAlignment = UITextAlignmentCenter; 

Nachdem das Textfeld in Landschaft neu gezeichnet wird ich dies tun:

Textfield.textAlignment = UITextAlignmentRight; 
Textfield.textAlignment = UITextAlignmentCenter; 

Jetzt ist der Platzhalter perfekt in beiden Modi zentriert. Hacky, aber scheint zu arbeiten. Bis jemand mit dem "richtigen Weg" antwortet, schätze ich.

0

Sie können sich wahrscheinlich um das gleiche Ergebnis mit erreichen:

[textfield setNeedsLayout]; 

oder möglicherweise

[textfield setNeedsDisplay]; 
+0

Ich habe versucht, jede, aber weder die mis zentrierten Platzhalter fixiert ... versucht, sie auch Rücken an Rücken . danke für die Eingabe egal. – TrekOnTV2017

Verwandte Themen