2016-05-19 10 views
1

Ich versuche, den Benutzernamen auf der rechten Seite und dann ein UIlabel mit etwas Text auf der linken Seite der Schaltfläche zu haben. HierWie richtet man UIButton nach links mit UILabel auf der rechten Seite aus? Wie Instagrams Kommentare

ist ein Beispiel das, was ich bin nach: enter image description here

Ich bin nur nicht sicher, wie ich die Zwänge, das zu tun bekommen, vor allem den Teil, wo der UILabel Text in der nächsten Zeile fortgesetzt wird unter der Schaltfläche ...?!

Wenn jemand irgendwelche Ideen hat, wird jede Hilfe geschätzt!

Grüße.

+0

Ich glaube, es ist ein benutzerdefiniertes Steuerelement enthält Textbereich und eine Schaltfläche. Bitte beachten Sie http://stackoverflow.com/questions/23107948/add-button-inside-a-text-view. Eigentlich konnte ich mit dieser Idee etwas Grundlegendes anfangen. Es könnte helfen. – smozgur

+0

@smozgur danke dafür, ich schaue mal ... Aber wenn du irgendein Beispiel hast, wäre das nett und hilfreich! :) –

+0

Ich spiele eigentlich damit, seit ich deine Frage gesehen habe. Ich habe bisher eine grundlegende Arbeitsstichprobe, aber ich versuche, sie zu verbessern, um zu lernen, wie das erreicht werden kann. Vielleicht wissen andere Programmierer besser, mal sehen, ob wir etwas zum Laufen bringen. – smozgur

Antwort

1

Ich denke, der beste Weg wäre, alles mit einem Etikett zu machen. Sie können den Textstil mit einer attributierten Zeichenfolge festlegen (Code unten). Erstellen Sie dann eine UIButton, die über dem Label liegt (die Größe des UIButton kann basierend auf der Länge des Benutzernamens angepasst werden).

Dies ist der Ansatz, den ich verwenden, wenn eine Verzichtserklärung Etikett auf einem Anmeldebildschirm zu schaffen, wie unten

enter image description here

gezeigt Hier ist der Code, der die zurück Zeichenfolge zu erstellen:

let disclaimerAttributedString = NSMutableAttributedString(string: disclaimerLabel.text!, attributes: [NSKernAttributeName: -0.4]) 
disclaimerAttributedString.addAttributes([NSForegroundColorAttributeName: UIColor.whiteColor(), NSUnderlineStyleAttributeName: NSUnderlineStyle.StyleSingle.rawValue], range: NSMakeRange(38, 12)) 
disclaimerAttributedString.addAttributes([NSForegroundColorAttributeName: UIColor.whiteColor(), NSUnderlineStyleAttributeName: NSUnderlineStyle.StyleSingle.rawValue], range: NSMakeRange(55, 14)) 
disclaimerLabel.attributedText = disclaimerAttributedString 

Meine Situation ist etwas anders, weil ich es auf statischen Text anwende. Für Sie können Sie entweder die Schaltfläche in Code basierend auf der Länge des Benutzernamens erstellen, oder Sie können es nur annähern, indem Sie die Schaltfläche oben links von UILabel festhalten.

Sie können die Länge des zugeschrieben String herausfinden, dass der Benutzername unter Verwendung der String-Erweiterung in this SO answer

+0

Ich dachte auf diese Weise, aber wie würde ich die Legnth des Benutzernamens bekommen? –