Swift UIView 常用新增方法

2021-12-30 03:35:42 字數 1967 閱讀 3230

swift 新增uiview有幾種常見方法

func insertsubview(view: uiview, atindex index: int)

func addsubview(view: uiview)

func insertsubview(view: uiview, belowsubview siblingsubview: uiview)

func insertsubview(view: uiview, abovesubview siblingsubview: uiview)

首先 addsubview 最常見就是普通的新增

let view1=uiview(frame: cgrectmake(10, 50, 200, 200))

let view2=uiview(frame: cgrectmake(170, 210, 200, 200))

view1.backgroundcolor=uicolor.redcolor()

view2.backgroundcolor=uicolor.greencolor()

self.view.addsubview(view1)

self.view.addsubview(view2)

我們看下效果

解析來我們獲取一下 self.view的子檢視,然後就知道剛才新增的兩個檢視的index

var arr:[anyobject]

arr = self.view.subviews;

println(arr=%d,arr.count)

結果為4,那麼view1 index為2,view2的index為3

下來我們看下這個方法

insertsubview(view: uiview, atindex index: int)

將view新增上來

let blueview=uiview(frame: cgrectmake(90, 130, 200, 200))

blueview.backgroundcolor=uicolor.bluecolor()

self.view.insertsubview(blueview, atindex: 3)

效果如下

我們可以看到 blueview新增到了view1和view2之間了

所有說 這個方法就是將view新增到指定位置

下來我們兩個方法一起比較來看

func insertsubview(view: uiview, belowsubview siblingsubview: uiview)

func insertsubview(view: uiview, abovesubview siblingsubview: uiview)

let orangeview=uiview(frame: cgrectmake(50, 90, 200, 200))

orangeview.backgroundcolor=uicolor.orangecolor()

self.view.insertsubview(orangeview, belowsubview: blueview)

let purpleview=uiview(frame: cgrectmake(130, 170, 200, 200))

purpleview.backgroundcolor=uicolor.purplecolor()

self.view.insertsubview(purpleview, abovesubview: blueview)

效果如下

我們看到他是講新的兩個view分別新增打了 blueview的上邊和下邊

swift UIView 擴充套件

import foundation import uikit brief uiview的擴充套件方法,方便工程全域性使用擴充套件方法來建立或者使用所有繼承於uiview的控制項 extension uiview func originx let originx cgfloat 獲取或設定origin...

swift UIView層次調整

swift 中新增的uiview都是有層級的。我們先新增三個看一看 objc view plain copy let view 1 uiview frame cgrectmake 10 50,200,200 let view2 uiview frame cgrectmake 60 100 200 2...

Swift UIView的建立和使用

建立view letview1 uiview letview2 uiview frame cgrectmake 20 120 100 100 letview3 uiview frame cgrectmake 40 140 100 100 設定view 的尺寸 view1.frame cgrectma...