[Swift通天遁地]2、表格表單-(9)快速建立一個美觀強大的表單

★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★
➤微信公衆號:山青詠芝(shanqingyongzhi)
➤博客園地址:山青詠芝(https://www.cnblogs.com/strengthen/
➤GitHub地址:https://github.com/strengthen/LeetCode
➤原文地址:http://www.javashuo.com/article/p-azzroywq-kk.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 'Eureka', '~> 2.0.0-beta.1'
7 end

根據配置文件中的相關配置,安裝第三方庫。微信

而後點擊打開【DemoApp.xcworkspace】項目文件。ide

在項目導航區,打開視圖控制器的代碼文件【ViewController.swift】post

如今開始編寫代碼,建立一個表單。spa

 1 import UIKit
 2 //在當前的類文件中引入已經安裝的第三方類庫
 3 import Eureka
 4 
 5 //修改當前視圖控制器類的父類的名稱
 6 class ViewController: FormViewController {
 7 
 8     override func viewDidLoad() {
 9         super.viewDidLoad()
10         
11         //表單中的元素是以段落進行劃分的。
12         //在此建立第一個段落。
13         form = Section("Section1")
14             //往第一個段落中添加一個文本行
15             <<< TextRow()
16             {
17                 row in
18                 //設置文本行的標識值,
19                 //經過該標識值,能夠得到用戶輸入的內容
20                 row.tag = "TextRow"
21                 //設置文本行的左側的標題文字
22                 row.title = "Text Row"
23                 //設置文本行的佔位文字
24                 row.placeholder = "Enter text here"
25             }
26             
27             //建立一個手機行,容許用戶在該行輸入一個手機號碼
28             <<< PhoneRow()
29             {
30                 row in
31                 //設置手機行的標識值
32                 row.tag = "PhoneRow"
33                 //設置手機行的左側的標題文字
34                 row.title = "Phone Row"
35                 //設置手機行的佔位文字
36                 row.placeholder = "And numbers here"
37             }
38             
39             //添加第二個表單段落
40             +++ Section("Section2")
41             
42             //添加一個日期行,用戶能夠在此設置日期的值
43             <<< DateRow()
44             {
45                 row in
46                 //設置日期行的標識值
47                 row.tag = "DateRow"
48                 //設置日期行的左側的標題文字
49                 row.title = "Date Row"
50                 //設置日期行的初始的值爲當天的日期
51                 row.value = NSDate() as Date
52             }
53         
54         //建立一個按鈕控件,並設置按鈕的顯示區域。
55         //當用戶點擊該按鈕時,將得到用戶在表單中輸入的內容
56         let button = UIButton(frame: CGRect(x: 0, y: 280, width: 320, height: 40))
57         //設置按鈕控件的背景顏色
58         button.backgroundColor = UIColor.orange
59         //設置按鈕控件的標題文字 
60         button.setTitle("Get row values", for: .normal)
61         //給按鈕控件綁定點擊事件
62         button.addTarget(self, 
63                          action: #selector(ViewController.getRowValues(_:)), 
64                          for: .touchUpInside)
65         
66         //將按鈕控件添加到當前視圖控制器的根視圖
67         self.view.addSubview(button)
68     }
69     
70     //添加一個方法,用來響應按鈕的點擊事件
71     func getRowValues(_ button : UIButton)
72     {
73         //經過標識的值,得到表單中的文本行
74         let row: TextRow? = form.rowBy(tag: "MyRowTag")
75         //得到用戶在該位置輸入的內容
76         let value = row?.value
77         //在控制檯輸出該內容
78         print("MyRowTag:\(value)")
79         
80         //得到用戶在表單輸入的全部內容,
81         //該內容是一個字典對象。
82         let valuesDictionary = form.values()
83         //在控制檯輸出該字典內容
84         print("valuesDictionary:\(valuesDictionary)")
85     }
86 
87     override func didReceiveMemoryWarning() {
88         super.didReceiveMemoryWarning()
89         // Dispose of any resources that can be recreated.
90     }
91 }
相關文章
相關標籤/搜索