iOS_Swift3_建立輸入框實踐數字累加計算功能學習

主視窗布局


介面元件使用:
兩個 Label (Label)

一個文字輸入框(Text Field)

加上一個 按鈕(Button)


按鈕程式累加功能撰寫

位於  ViewController.swift 檔案之中

ViewController.swift

import UIKit

class ViewController: UIViewController {
    @IBOutlet weak var textNum: UITextField!
    @IBOutlet weak var labelResult: UILabel!
    
    @IBAction func buttonClick(_ sender: UIButton) {
        let n:Int? = Int(textNum.text!)
        if n != nil{
            let total:Int = calaulate(n!)
            labelResult.text = "總和=\(total)"
        }else{
            print("型別錯誤!")
        }
    }
    
    func calaulate(_ n:Int) -> Int {
        // 求 1+2+3+… +n 之和
        var sum:Int = 0
        //舊式C語言迴圈寫法不支援 Swift 3
        /*
        for var i:Int=0; i<=n; i += 1 {
            sum = sum + i
        }
        */
        
        for i in 0...n{
            sum += i
        }
        
        return sum
    }
}


首先  並非直接寫出來的程式碼!!!!!


@IBOutlet weak var textNum: UITextField!
@IBOutlet weak var labelResult: UILabel!


是藉由 右鍵按著不放拖拉至.swift程式碼編輯區塊最一開始區塊
拖拉一放 會要你 自行設定名字 比方 AAA 的 Label元件

由於 它是繼承於 UILabel的且預設是以 @IBOutlet 所生成
因此會自動產生

@IBOutlet weak var AAA: UILabel!

的語法
@IBOutlet   ---> for 元件串連

指建立一個Interface Builder的Outlet連接,是以弱參考建立一個繼承UILabel的元件,
被取名為AAA。




按鈕事件  註冊連結方法
@IBAction func buttonClick(_ sender: UIButton) {
        let n:Int? = Int(textNum.text!)
        if n != nil{
            let total:Int = calaulate(n!)
            labelResult.text = "總和=\(total)"
        }else{
            print("型別錯誤!")
        }
    }
    
    func calaulate(_ n:Int) -> Int {
        // 求 1+2+3+… +n 之和
        var sum:Int = 0
        //舊式C語言迴圈寫法不支援 Swift 3
        /*
        for var i:Int=0; i<=n; i += 1 {
            sum = sum + i
        }
        */
        
        for i in 0...n{
            sum += i
        }
        
        return sum
    }

Ctrl按著不放滑鼠點擊Button元件拖拉出一個藍色箭頭
移至視圖控制器上方的黃色圓圈區塊(ViewController),
此時放開後會跳出黑色小選單,
包含Action Seque、Sent Events 等區塊,
我們選擇
Sent Events 區塊下方的buttonClick選項,完成功能連結。


@IBAction   ----> for 事件串連


@IBAction func buttonClick(_ sender: UIButton)
{
    .........
}

創建一個Interface Builder的Action連接
以弱參考形式建立一個繼承來自UIButton的物件,名為buttonClick

後面_ sender:指的就是這個按鈕的動作

最後的大括號區塊中
可以讓我們撰寫,當使用者按下按鈕之後所要執行的程式碼。







按鈕事件  註冊 查看

最右上角

Show the Connections inspector













留言

這個網誌中的熱門文章

何謂淨重(Net Weight)、皮重(Tare Weight)與毛重(Gross Weight)

Architecture(架構) 和 Framework(框架) 有何不同?_軟體設計前的事前規劃的藍圖概念

經得起原始碼資安弱點掃描的程式設計習慣培養(五)_Missing HSTS Header