2016-05-30 131 views
2

我有以下代碼UIButton的標籤沒有顯示

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) 

當視圖加載我看到下面的圖片(請注意,按鈕是黑色的長方形): enter image description here

所以標題是不可見的,但是當我按一下按鈕,我可以獲取其title屬性

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

,我也得到了button title = Optional("http://example.com")但無論如何按鈕標題是不可見的。有什麼建議麼?

+0

請先嚐試使其更大(更高) - 它可能太小而無法顯示文本。 – sschale

+0

「寬度」變量有多少?看起來只有幾個像素。 – derdida

+0

@sschale是的,我試過了,但它並沒有幫助 –

回答

2

您跳過了一步。您應該添加標題顏色: -

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

您的按鈕標題是顯示,但在白色color.Give任何顏色的按鈕標題它there.There是沒有問題的代碼。

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