今回の内容
コード
-
チェックボックスにチェックを入れると、
startButton
を浮き上がらせ、有効にする。 -
checkButton
のcurrentBackgroundImage
がUIImage(systemName: "stop")
の時、UIImage(systemName: "checkmark.square")
に変えることでチェックマークを入れている様に見せる。その逆をする事で、チェックマークを外している様に見せることが出来る。
import UIKit
class ConsentStatementViewController: UIViewController {
@IBOutlet weak var consentStatementView: UITextView!
@IBOutlet weak var checkButton: UIButton!
@IBOutlet weak var startButton: UIButton!
override func viewDidLoad() {
super.viewDidLoad()
checkButton.tintColor = .black
startButton.setTitle("注意事項を必ずお読み下さい", for: .normal)
startButton.setTitleColor(.orange, for: .normal)
startButton.titleLabel?.adjustsFontSizeToFitWidth = true
startButton.layer.cornerRadius = 20.0
startButton.isEnabled = false
consentStatementView.isEditable = false
consentStatementView.text = """
注意事項
1.~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~。
2.~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~。
3.~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~。
4.~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~。
5.~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~。
"""
}
@IBAction func check(_ sender: UIButton) {
if sender.currentBackgroundImage == UIImage(systemName: "stop"){
sender.setBackgroundImage(UIImage(systemName: "checkmark.square"), for: .normal)
sender.tintColor = .systemGreen
startButton.setTitle("AppStart", for: .normal)
startButton.setTitleColor(.white, for: .normal)
startButton.backgroundColor = .systemGreen
startButton.isEnabled = true
startButton.layer.masksToBounds = false
startButton.layer.shadowOffset = CGSize(width: 5, height: 5)
startButton.layer.shadowRadius = 5.0
startButton.layer.shadowOpacity = 0.8
}else if sender.currentBackgroundImage == UIImage(systemName: "checkmark.square"){
sender.setBackgroundImage(UIImage(systemName: "stop"), for: .normal)
sender.tintColor = .black
startButton.setTitle("注意事項を必ずお読み下さい", for: .normal)
startButton.setTitleColor(.orange, for: .normal)
startButton.backgroundColor = .white
startButton.titleLabel?.adjustsFontSizeToFitWidth = true
startButton.isEnabled = false
startButton.layer.masksToBounds = true
}
}
@IBAction func appStart(_ sender: UIButton) {
if checkButton.currentBackgroundImage == UIImage(systemName: "stop"){
return
}else if checkButton.currentBackgroundImage == UIImage(systemName: "checkmark.square"){
//画面遷移など
}
}
}
終わり
ご指摘、ご質問などありましたら、コメントまでお願い致します。