iT邦幫忙

2021 iThome 鐵人賽

DAY 14
0
Mobile Development

IOS菜逼八連續30天挑戰系列 第 14

Day 14 實作調色盤App(2/3)

上一篇我們講到如何用Slider去改變顏色
這篇會介紹如何使用輸入框

程式碼如下:

//控制紅色的輸入框
 @IBAction func redtextfield(_ sender: UITextField) {
        redslider.value = textFieldValueToSliderValue(num: sender.text!)
        VIEW.backgroundColor = UIColor(red: CGFloat(redslider.value/255), green: CGFloat(greenslider.value/255), blue: CGFloat(blueslider.value/255),alpha: 1)
    }
//控制綠色的輸入框
 @IBAction func greentextfield(_ sender: UITextField) {
        greenslider.value = textFieldValueToSliderValue(num: sender.text!)
        VIEW.backgroundColor = UIColor(red: CGFloat(redslider.value/255), green: CGFloat(greenslider.value/255), blue: CGFloat(blueslider.value/255),alpha: 1)
    }
//控制藍色的輸入框
 @IBAction func bluetextfield(_ sender: UITextField) {
        blueslider.value = textFieldValueToSliderValue(num: sender.text!)
        VIEW.backgroundColor = UIColor(red: CGFloat(redslider.value/255), green: CGFloat(greenslider.value/255), blue: CGFloat(blueslider.value/255),alpha: 1)
    }

由於輸入框讀的值是字串,所以我們藉由

greenslider.value = textFieldValueToSliderValue(num: sender.text!)

這段去把他的值讀出來

然後這邊會報錯,原因是因為我們還沒有建立function,
我們在下面建立一個function叫做"textFieldValueToSliderValue"

(注意不要建立錯位置,將function建立在viewDidLoad()裏,我們要建立在viewDidLoad()"外面")

   var result: Float = 0
   func textFieldValueToSliderValue(num: String) -> Float {
       result = Float(num)!
       return result
   }

建立好之後我們再學習點擊空白處關閉鍵盤的方法

//按下空白處可以收起鍵盤
    override func touchesBegan(_ touches: Set<UITouch>, with event: UIEvent?) {
        view.endEditing(true)
    }
    

到這邊程式碼的部分就完成了~這邊會有@IBOutlet跟@IBAction的報錯,是因為我們還沒建立元件也還沒拉連結,下一篇會跟各位說怎麼拉連結~


上一篇
Day 13 實作調色盤App(1/3)
下一篇
Day 15 實作調色盤App(3/3)
系列文
IOS菜逼八連續30天挑戰30

尚未有邦友留言

立即登入留言