iOS10 UI教程層次結構的事件
iOS10 UI教程層次結構的事件
iOS10 UI教程層次結構的事件,層次結構中存在7個事件,對於這些事件的介紹如表1-3所示。透過這些事件,可以監聽檢視,當檢視在層次結構上發生變化時可以被攔截,也可以透過父檢視或子檢視進行管理。
表1-3 層次結構的事件
事件 |
功能 |
didAddSubview(_:) |
當加入檢視完成後呼叫 |
willRemoveSubview(_:) |
在刪除檢視之前呼叫 |
willMove(toSuperview:) |
當移動檢視之前呼叫 |
didMoveToSuperview() |
當檢視移動完成後呼叫 |
willMove(toWindow:) |
當檢視移動到WINDOW之前呼叫 |
didMoveToWindow() |
當檢視移動到WINDOW後呼叫 |
【示例1-9:HierarchyEvents】以下將使用層次結構的事件實現檢視的監聽。具體的操作步驟如下:
(1)建立一個基於UIView的類檔案,命名為CustomView。
(2)開啟CustomView.swift檔案,編寫程式碼,透過層次結構的事件監聽檢視。程式碼如下:
點選(此處)摺疊或開啟
-
import UIKit
-
class CustomView: UIView {
-
//當檢視移動完成後呼叫
-
override func didMoveToSuperview() {
-
print("I have a superview!")
-
}
-
//當加入檢視完成後呼叫
-
override func didAddSubview(_ subview: UIView) {
-
print("The subView \(subview) has been added")
-
}
-
//當檢視移動到WINDOW後呼叫
-
override func didMoveToWindow() {
-
print("I've been attached to this window hierarchy:\(window!)")
-
}
- }
(3)開啟Main.storyboard檔案,選擇主檢視,在Show the Identity inspector皮膚中找到Class,將其設定為剛才建立的類即CustomView。此時執行程式,會在應用程式輸出視窗輸出以下內容:
點選(此處)摺疊或開啟
-
The subView <_UILayoutGuide: 0x7fbd57a00c40; frame = (0 0; 0 0); hidden = YES; layer = <CALayer: 0x600000028fe0>> has been added
-
The subView <_UILayoutGuide: 0x7fbd57a07990; frame = (0 0; 0 0); hidden = YES; layer = <CALayer: 0x600000029000>> has been added
-
I've been attached to this window hierarchy:<UIWindow: 0x7fbd55c05f70; frame = (0 0; 375 667); gestureRecognizers = <NSArray: 0x618000054430>; layer = <UIWindowLayer: 0x618000029dc0>>
- I have a
iOS10 UI教程層次結構的事件
相關閱讀:iOS10 UI教程檢視和子檢視的可見性
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29597077/viewspace-2129089/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- iOS10 UI教程管理層次結構iOSUI
- iOS10 UI教程子檢視和父檢視UI層次結構和Views繼承iOSUIView繼承
- dump index 的層次結構Index
- 儲存器的層次結構
- WordPress模板層次02:模板層次結構和原理
- iOS10 UI教程檢視的中心位置iOSUI
- 繪製層次結構圖
- LB 負載均衡的層次結構負載
- iOS10 UI設計基礎教程iOSUI
- iOS10 UI教程檢視除錯iOSUI除錯
- iOS10 UI教程檢視的生命週期iOSUI
- MFC9.0層次結構圖
- iOS10 UI教程檢視的幾何形狀iOSUI
- 深入理解 Flutter 框架層次結構Flutter框架
- 六、層次結構儲存系統
- cad.net開發小結——層次結構
- 關於Spring Cloud的特性與層次結構SpringCloud
- SQL Server 2008的加密層次結構SQLServer加密
- 談一談資料域層次結構
- Tomcat伺服器層次結構研究Tomcat伺服器
- 計算機網路的七層結構、五層結構和四層結構計算機網路
- iOS10 UI教程檢視的邊界與檢視的框架iOSUI框架
- IPv6優點之層次化的地址結構
- 改變eclipse工程中程式碼的層次結構Eclipse
- iOS10 UI教程禁用檢視與使用者的互動iOSUI
- iOS10 UI教程檢視和子檢視的可見性iOSUI
- mongodb c driver bson的巢狀訪問與層次結構MongoDB巢狀
- 層次結構資料的資料庫儲存和使用資料庫
- JDK安裝方法、使用方法和層次結構JDK
- 層次式架構案例架構
- 在JavaScript裡寫類層次結構?別那麼做!JavaScript
- 計算機的層次化架構計算機架構
- 探索 Python(4): 探索 Python 型別的層次結構 —— 使用列表Python型別
- Django工程的分層結構Django
- golang map的底層結構Golang
- iOS10 UI教程基礎視窗的內容與設定起始視窗iOSUI
- 隨著複雜性的增加,層次結構的用處越來越小? - jarcheJAR
- 計算機系統的層次結構(計算機組成原理5)計算機