iOS10 UI教程子視圖和父視圖UI階層和Views繼承

來源:互聯網
上載者:User

標籤:imp   操作   技術   image   src   uiview   ack   索引   事件   

iOS10 UI教程子視圖和父視圖UI階層和Views繼承

iOS10 UI教程子視圖和父視圖UI階層和Views繼承,本節將講解與UI階層和Views繼承相關的內容,其中包括子視圖和父視圖、管理階層、視圖和子視圖的可見度、階層的事件等內容。

子視圖和父視圖

每一個UIView(或者是子類)的執行個體都可以與其它的視圖使用父-子關係的方式進行串連。其中父視圖被稱為superview(超視圖),孩子視圖被稱為subviews(子視圖)。一個視圖可以有且僅有一個父視圖,但是可以有多個子視圖,所1.12示。

 

圖1.12  父視圖和子視圖

對於父視圖的訪問開發人員可以使用superview屬性,其文法形式如下:

var superview: UIView? { get }

對應子子視圖的訪問可以使用subviews屬性,其文法形式如下:

var subviews: [UIView] { get }

【樣本1-6:SuperViewAndSubView】以下將通過superview屬性和subviews屬性對空白視圖的背景顏色進行設定。具體的操作步驟如下:

(1)開啟Main.storyboard檔案,從視圖庫中拖動View空白視圖到View Controller的主視圖中,將此空白視圖的位置和大小調整為(16, 107, 343, 423)。為此視圖聲明和關聯插座變數view1。

(2)從視圖庫中拖到第二個View空白視圖到View Controller的主視圖中,並將此視圖放置在view1視圖中,將此視圖的位置和大小調整為(51, 147, 240, 128)。為此視圖聲明和關聯插座變數view2。

(3)開啟ViewController.swift檔案,編寫代碼,為視圖改變背景顏色。代碼如下:

import UIKitclass ViewController: UIViewController {    @IBOutlet weak var view1: UIView!    @IBOutlet weak var view2: UIView!    override func viewDidLoad() {        super.viewDidLoad()        // Do any additional setup after loading the view, typically from a nib.        let parentView=view2.superview                                                              //擷取view2的父視圖        let children=view1.subviews                                                                      //擷取view1的子視圖        parentView?.backgroundColor=UIColor.red        children[0].backgroundColor=UIColor.yellow    }……}

此時運行程式,會看到1.13所示的效果。

 

圖1.13  運行效果                                   圖1.14  索引

相關閱讀:iOS10 UI教程視圖的中心位置

iOS10 UI教程子視圖和父視圖UI階層和Views繼承

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.