2016-03-08 74 views
23

設置的UIButton沒有爲的UILabel在故事板的設置,允許設置自動收縮配置,如下圖所示:自動收縮在故事板

enter image description here

但我無法找到的UIButton的爲textLabel相同。 我知道我可以通過編程設置它,但好奇的是想知道是否有一種方法可以在Storyboard中爲UIButton啓用此設置。

回答

32

您可以使用用戶定義的運行屬性使用情節提要設置此標誌。

設置以下關鍵路徑:

titleLabel.adjustsFontSizeToFitWidth to true 

Adjust Font Size using Storyboard

2

試試這個

btn.titleLabel.adjustsFontSizeToFitWidth = YES; 
btn.titleLabel.minimumScaleFactor = 0.5; // set whatever factor you want to set 

如果你想在故事板設置嘗試IBDesignable和IBInspectable

參考http://nshipster.com/ibinspectable-ibdesignable/

+0

你也是我的回答對downvoter,OK歡迎兄弟,與出單問的問題代碼需要改變,這是可能的UIButton –

+0

沒有硬的感覺兄弟,它被棄用,所以我做downvote – techloverr

+0

IBDesignable或IBInspectable我們分配的習慣proerty,在這裏,我們添加我們自己的財產,無論我們需要改變 –

10

沒有,沒有在故事板的設置按鈕的可用選項textlabel自動收縮,

但是,您可以用的編程方式對其進行編程設置,如您所知道的那樣調整字體大小到合適寬度

yourbutton.titleLabel?.adjustsFontSizeToFitWidth = true; 
+0

你可以通過IBDesignable和IBInspectable來設置它 – techloverr

+0

@techloverr他只是想知道這是故事板的可能性。他想直接選擇像UILabel中的Autoshrink。 –

+0

是的,但我們可以通過僅僅幾行代碼向他展示另一種方法,而不是告訴他大膽的 – techloverr

1

斯威夫特4溶液

class CustomButton : UIButton{ 
    @IBInspectable var adjustsTitleFontSizeToFitWidth: Bool = false { 
     didSet { 
      self.titleLabel?.adjustsFontSizeToFitWidth = adjustsTitleFontSizeToFitWidth 
     } 
    } 
}