Swiftでいこう。 - Swiftplaygrounds3
もう少しいじってみましょう。ボタンを押して背景を変えるのと、ボタンの表示を変えてみます。
コードを追加するのは、ボタンを押した時のアクション、動きをするタイミングと、内容の2つになります。
まず、押した時の動作を書いて行きます。
うまく動かすには、class を作ってその中に動作を指定いきます。
class ButtonAction{
@objc func tap(){
view.backgroundColor = .red
button.backgroundColor = .purple
button.setTitle("押したよ!", for: .normal)
}
}
こんな感じです。ポイントは
“@objc func”というふうにすることかな。
これを実体化、変数に入れて行きます。
var target = ButtonAction()
そして、
button.addTarget(target, action: #selector(target.tap), for: .touchUpInside)
こんな感じでボタンを押した時の命令を書いて行きます。
これで、ボタンを押した時に背景が変わり、ボタンのタイトルも変わります。
全体像をご紹介。
最初です。
ボタンを押すと、
コードです。
import UIKit
import PlaygroundSupport
let view = UIView()
view.backgroundColor = #colorLiteral(red: 0.584313750267029, green: 0.823529422283173, blue: 0.419607847929001, alpha: 1.0)
let button = UIButton(frame:CGRect(x: 50, y: 50, width: 200, height: 50))
button.backgroundColor = .blue
button.setTitle("押してね", for: .normal)
button.layer.cornerRadius = 15
view.addSubview(button)
class ButtonAction{
@objc func tap(){
view.backgroundColor = .red
button.backgroundColor = .purple
button.setTitle("押したよ!", for: .normal)
}
}
var target = ButtonAction()
button.addTarget(target, action: #selector(target.tap), for: .touchUpInside)
PlaygroundPage.current.liveView = view