★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★
➤微信公衆號:山青詠芝(shanqingyongzhi)
➤博客園地址:山青詠芝(https://www.cnblogs.com/strengthen/)
➤GitHub地址:https://github.com/strengthen/LeetCode
➤原文地址:http://www.javashuo.com/article/p-kvljedad-ma.html
➤若是連接不是山青詠芝的博客園地址,則多是爬取做者的文章。
➤原文已修改更新!強烈建議點擊原文地址閱讀!支持做者!支持原創!
★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★html
目錄:[Swift]通天遁地Swiftios
本文將演示如何經過組的概念,同時對多個視圖添加相同的約束關係。git
首先確保在項目中已經安裝了所需的第三方庫。github
點擊【Podfile】,查看安裝配置文件。swift
1 platform :ios, ‘12.0’ 2 use_frameworks! 3 4 target 'DemoApp' do 5 source 'https://github.com/CocoaPods/Specs.git' 6 pod 'Neon' 7 end
根據配置文件中的相關配置,安裝第三方庫。數組
而後點擊打開【DemoApp.xcworkspace】項目文件。微信
在項目導航區,打開視圖控制器的代碼文件【ViewController.swift】ide
1 import UIKit 2 //在當前的類文件中,引入已經安裝的第三方類庫 3 import Neon 4 5 class ViewController: UIViewController { 6 7 //添加一個視圖變量,做爲類的一個屬性。 8 var neonView : UIView! 9 10 override func viewDidLoad() { 11 super.viewDidLoad() 12 // Do any additional setup after loading the view, typically from a nib. 13 //組的使用 14 groupExample() 15 } 16 17 //添加一個方法,用來演示組的使用。 18 func groupExample() 19 { 20 //初始化一個指定顯示區域的對象,做爲其餘子視圖的父視圖。 21 let viewParent = UIView(frame: CGRect(x: 20, y: 40, width: 280, height: 280)) 22 //設置視圖對象的背景顏色爲淺灰色 23 viewParent.backgroundColor = UIColor.lightGray 24 //將視圖對象添加到根視圖 25 self.view.addSubview(viewParent) 26 27 //初始化兩個浮點類型的數字, 28 //表示視圖的間距和尺寸。 29 let pad = CGFloat(10) 30 let size = CGFloat(60) 31 //初始化一個顏色數組,做爲四個視圖的背景顏色。 32 let colors = [UIColor.purple, UIColor.brown, UIColor.orange] 33 34 //初始化一個視圖對象 35 let view1 = UIView() 36 //設置背景顏色 37 view1.backgroundColor = colors[0] 38 //將視圖對象添加到父視圖 39 viewParent.addSubview(view1) 40 41 //初始化一個視圖對象 42 let view2 = UIView() 43 //設置背景顏色 44 view2.backgroundColor = colors[1] 45 //將視圖對象添加到父視圖 46 viewParent.addSubview(view2) 47 48 //初始化一個視圖對象 49 let view3 = UIView() 50 //設置背景顏色 51 view3.backgroundColor = colors[2] 52 //將視圖對象添加到父視圖 53 viewParent.addSubview(view3) 54 55 //經過調用父視圖的組居中方法,將指定的三個視圖,約束在水平方向的中心位置。 56 //同時設置子視圖的尺寸和間距。 57 viewParent.groupInCenter(group: .horizontal, views: [view1, view2, view3], padding: pad, width: size, height: size) 58 59 //經過調用父視圖的組居中方法,將指定的三個視圖,約束在垂直方向的中心位置。 60 //同時設置子視圖的尺寸和間距。 61 //viewParent.groupInCenter(group: .vertical, views: [view1, view2, view3], padding: pad, width: size, height: size) 62 63 //經過調用父視圖的組居中並貼近邊緣的方法,將指定的三個視圖,約束在水平方向上的居左的位置 64 //viewParent.groupAgainstEdge(group: .horizontal, views: [view1, view2, view3], againstEdge: .left, padding: pad, width: size, height: size) 65 66 //將子視圖成組,並在垂直方向上填充父視圖。 67 viewParent.groupAndFill(group: .vertical, views: [view1, view2, view3], padding: pad) 68 } 69 70 override func viewWillLayoutSubviews() { 71 72 } 73 74 override func didReceiveMemoryWarning() { 75 super.didReceiveMemoryWarning() 76 // Dispose of any resources that can be recreated. 77 } 78 }