IBDesignable/IBInspectable浪讳,是iOS8的新特性缰盏。其主要功能是可以直接在XIB或者Storyboard中直接,設(shè)置UI類的屬性。例如我們自定義一些控件,可以把控件的屬性映射到XIB上茁影。
-
下面是控件的例子盛嘿,更直觀的將IBDesignable/IBInspectable的作用顯現(xiàn)出來只冻。
-
首先我們新建一個RatingBar類
@IBDesignable
class RatingBar: UIView {
@IBInspectable var ratingMax: CGFloat = 10 //總分
@IBInspectable var starNums: Int = 5 //星星總數(shù)
//分數(shù)
@IBInspectable var rating: CGFloat = 0 {
didSet {
if 0 > rating { rating = 0 }
else if ratingMax < rating { rating = ratingMax }
//回調(diào)給代理
self.setNeedsLayout()
}
}@IBInspectable var imageLight: UIImage = UIImage(named: "ratingbar_star_light")!
@IBInspectable var imageDark: UIImage = UIImage(named: "ratingbar_star_dark")!@IBInspectable var canAnimation: Bool = false //是否開啟動畫模式
@IBInspectable var animationTimeInterval: NSTimeInterval = 0.2 //動畫時間
@IBInspectable var isIndicator: Bool = false //是否是一個指示器 (用戶無法進行更改)private var foregroundRatingView: UIView!
private var backgroundRatingView: UIView!private var isDrew = false //是否創(chuàng)建過
override init(frame: CGRect) {
super.init(frame: frame)
self.buildView()
} 然后在XIB或Storyboard里面,拖一個UIView上去,把class改成自己定義的RatingBar
-
-
這樣更方便我們使用較復(fù)雜的控件是設(shè)置屬性,希望以后可以多借鑒使用须尚。
?
Swift 中的 IBDesignable/IBInspectable
最后編輯于 :
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
- 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來木柬,“玉大人皆串,你說我怎么就攤上這事∶颊恚” “怎么了愚战?”我有些...
- 文/不壞的土叔 我叫張陵娇唯,是天一觀的道長。 經(jīng)常有香客問我寂玲,道長,這世上最難降的妖魔是什么梗摇? 我笑而不...
- 正文 為了忘掉前任拓哟,我火速辦了婚禮,結(jié)果婚禮上伶授,老公的妹妹穿的比我還像新娘断序。我一直安慰自己,他們只是感情好糜烹,可當我...
- 文/花漫 我一把揭開白布违诗。 她就那樣靜靜地躺著,像睡著了一般疮蹦。 火紅的嫁衣襯著肌膚如雪诸迟。 梳的紋絲不亂的頭發(fā)上,一...
- 文/蒼蘭香墨 我猛地睜開眼快耿,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了芳绩?” 一聲冷哼從身側(cè)響起掀亥,我...
- 正文 年R本政府宣布,位于F島的核電站惨驶,受9級特大地震影響白热,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜粗卜,卻給世界環(huán)境...
- 文/蒙蒙 一屋确、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧续扔,春花似錦攻臀、人聲如沸。這莊子的主人今日做“春日...
- 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至识脆,卻和暖如春设联,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背存璃。 一陣腳步聲響...
推薦閱讀更多精彩內(nèi)容
- 前言 自定義控件的時候,經(jīng)常會不僅在代碼中創(chuàng)建該控件衰絮,現(xiàn)在還越來越多的在Storyboard和XIB中直接創(chuàng)建袍冷,如...
- 添加對Interface Builder的支持 如果你在Interface Builder中看rating控件,你...
- http://www.cocoachina.com/cms/wap.php?action=article&id=1...
- 因為要結(jié)局swift3.0中引用snapKit的問題,看到一篇介紹Xcode8,swift3變化的文章,覺得很詳細...