1
我創建按鈕的編程方式是這樣的:斯威夫特按鈕需要有2線標題
let stage: Stages = stagesObjectsArray[i]
let button = UIButton(type: .Custom) as UIButton
button.setTitle(stage.name, forState: .Normal)
button.sizeToFit()
button.frame.origin = buttonPosition
let buttonIncrement = button.frame.size.width + padding.width
buttonPosition.x = buttonPosition.x + buttonIncrement
button.backgroundColor = UIColor.blackColor()
button.titleLabel?.font = UIFont(name: "", size: widthOfScreen/3.2)
button.setTitleColor(UIColor.darkGrayColor(), forState: UIControlState.Normal)
button.tag = stage.id
button.addTarget(self, action: #selector(GamesAllViewController.buttonPressedTopMenu(_:)), forControlEvents: .TouchUpInside)
buttonView.addSubview(button)
我想要什麼來實現,並不能找出如何有按鈕的稱號2行,如果按鈕的寬度變得太大(例如超過屏幕寬度的一半)。
我在這個主題上發現了一些問題,但他們都假設他們知道按鈕的標題,而在我的情況下它是動態的,我不知道它可能是什麼。
我曾嘗試這個代碼,但沒有改變:
button.titleLabel!.lineBreakMode = NSLineBreakMode.ByWordWrapping
button.titleLabel!.numberOfLines = 2
有人能幫忙嗎?
我不知道前面的按鈕的稱號,它來自服務器,我無法知道該在哪裏介紹\ n – asheyla
在這種情況下,您必須通過服務器的數據動態計算UIButton的寬度,並保持numberOfLines = 0,否則您可以製作一個竅門,使用帶有textView/label交互功能的UIView,並在其上添加false和button按鈕然後a s每個服務器數據你必須爲UIView設置框架,也使UtoView的cliptoBounds成爲true。 – Hasya
您是否找到解決方案? – Hasya