2016-05-30 14 views
2

Ich habe den folgenden CodeUIButton Etikett nicht

let width = UIScreen.mainScreen().bounds.width  
let linkLabel = UILabel(frame: CGRect(x: 8, y: contentHeight, width: 100, height: labelHeight)) 
    let linkButton = UIButton(frame: CGRect(x: 108, y: contentHeight, width: width - 108, height: labelHeight)) 
    mainScrollView.addSubview(linkLabel) 
    mainScrollView.addSubview(linkButton) 
    linkLabel.text = "Link:" 
    linkButton.addTarget(self, action: #selector(linkButtonPressed), forControlEvents: .TouchUpInside) 
    linkButton.setTitle("http://example.com", forState: .Normal) 
    linkButton.layer.borderWidth = 1.0 

    mainScrollView.contentSize = CGSize(width: view.frame.width, height: contentHeight) 

zeigt Und wenn Ansicht Lasten i folgendes Bild (Beachten Sie, dass Schaltfläche schwarzes Rechteck ist): enter image description here

So Titel nicht sichtbar ist, aber wenn i klicken Sie auf die Schaltfläche i seine Titel-Eigenschaft abrufen kann

func linkButtonPressed(sender: UIButton) { 
    print("button title = \(sender.titleLabel?.text)") 
} 

und ich erhalte die button title = Optional("http://example.com") aber trotzdem Taste Titel nicht sichtbar ist. Irgendwelche Vorschläge?

+0

Versuchen Sie es größer (größer) zuerst - es könnte zu klein sein, um den Text anzuzeigen. – sschale

+0

Wie groß ist die Variable "Breite"? Scheint, das sind nur ein paar Pixel. – derdida

+0

@sschale ja ich habe es versucht aber es hilft nicht –

Antwort

2

Sie haben einen Schritt übersprungen. Sie sollten Titelfarbe hinzufügen: -

linkButton.setTitleColor(UIColor.blackColor(), forState: .Normal) 
3

Ihr Button-Titel ist Display, aber in weißer Farbe.Gibt jede Farbe zu Button-Titel ist es da.Es gibt kein Problem in Ihrem Code.

linkButton.setTitle("http://example.com", forState: .Normal) 
linkButton.setTitleColor(UIColor.redColor(), forState: UIControlState.Normal)