IOS之XIB結合UIView製作自定義元件

2021-10-23 09:20:39 字數 1377 閱讀 4756

這裡實現乙個簡單的進度條元件。使用者可以自由設定進度條的進度、尺寸、文字顏色、進度條顏色、背景顏色。不同的是,我們這裡建立的時候引入 xib 檔案來實現布局。

class

progressview

:uiview

else

if percent <

0 progresslable.text =

"\(percent)

%"setneedslayout()

}}//文字顏色

@ibinspectable

var color:

uicolor

=.white

}//進度條顏色

@ibinspectable

var barcolor:

uicolor

=uicolor

.orange

}//進度條背景顏色

@ibinspectable

var barbgcolor:

uicolor

=uicolor

.lightgray

}//初始化預設屬性配置

func

initsetup()

//布局相關設定

override

func

layoutsubviews()

//通過**建立走這個方法--》 最終走init()方法

override

init

(frame:

cgrect

)//自定義view的時候 ,為了使用 xib 和 純**建立。

//注 : required init?(coder adecoder: nscoder) 必須加上 ,裡面實現 super.init(coder: adecoder)。

//系統預設實現是 fatalerror("init(coder:) has not been implemented") ,xib初始化的時候會crash。

//通過xib建立的走這個方法 --》 然後在走awakefromnib() 方法

required

init

?(coder:

nscoder

)//mark: -- 載入xib的方法

func

loadnibview()

->

uiview

//給view新增約束

func

addconstraints()

->

void

}

class

viewcontroller

:uiviewcontroller

}

iOS使用xib自定義uiview

一般自定義view 方式 有 在初始化的時候新增 子views cpp view plain copy id initwithframe cgrect frame returnself 還有種 是自己畫。過載 void drawrect cgrect rect 如果 布局複雜的話 這種 方式 可以鬱...

iOS使用xib自定義uiview

一般自定義view 方式 有 在初始化的時候新增 子views cpp view plain copy id initwithframe cgrect frame returnself 還有種 是自己畫。過載 void drawrect cgrect rect 如果 布局複雜的話 這種 方式 可以鬱...

xib 設定陰影 iOS為UIView設定陰影效果

uiview的陰影設定主要通過uiview的layer的相關屬性來設定 陰影的顏色 im iew.layer.shadowcolor uicolor blackcolor cgcolor 陰影的透明度 im iew.layer.shadowopacity 0.8f 陰影的圓角 im iew.laye...