日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

iOS10 UI教程层次结构的事件

發布時間:2025/3/20 编程问答 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 iOS10 UI教程层次结构的事件 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

2019獨角獸企業重金招聘Python工程師標準>>>

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 UIKitclass 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 addedThe subView <_UILayoutGuide: 0x7fbd57a07990; frame = (0 0; 0 0); hidden = YES; layer = <CALayer: 0x600000029000>> has been addedI've been attached to this window hierarchy:<UIWindow: 0x7fbd55c05f70; frame = (0 0; 375 667); gestureRecognizers = <NSArray: 0x618000054430>; layer = <UIWindowLayer: 0x618000029dc0>>I have a superview!

iOS10 UI教程層次結構的事件

相關閱讀:iOS10 UI教程視圖和子視圖的可見性?

轉載于:https://my.oschina.net/u/1585857/blog/794351

總結

以上是生活随笔為你收集整理的iOS10 UI教程层次结构的事件的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。