(野熊先生の講義)デジタルソフトを当てる
クマの講義に合わせて、数字を当てるソフトを作った.
アプリケーションイメージ
アプリケーションイメージ
アプリケーション実行画面
スライダを動かし、指定した数値をランダムに合わせます.
5回の機会内に完成しなければ.
答えが正しければ
ViewControllerCode
import UIKit
class ViewController: UIViewController {
var randomValue: Int = 0 //기본 할당값
var tryCount: Int = 0
@IBOutlet weak var slider: UISlider!
@IBOutlet weak var tryCountLabel: UILabel!
@IBOutlet weak var sliderValueLabel: UILabel!
@IBOutlet weak var minimumValueLabel: UILabel!
@IBOutlet weak var maximumValueLabel: UILabel!
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view.
slider.setThumbImage(#imageLiteral(resourceName: "slider_thumb"), for: .normal)
reset()
}
@IBAction func sliderValueChanged(_ sender : UISlider){
print(sender.value)
let integerValue: Int = Int(sender.value)
sliderValueLabel.text = String(integerValue)
}
func showAlert(message: String) {
let alert = UIAlertController(title: nil,
message: message,
preferredStyle: .alert)
let okAction = UIAlertAction(title: "Ok",
style: .default) { (action) in
self.reset()
}
alert.addAction(okAction)
present(alert, animated: true, completion: nil)
}
@IBAction func touchUpHitButton(_ sender : UIButton){
print(slider.value)
let hitValue: Int = Int(slider.value)
slider.value = Float(hitValue)
tryCount = tryCount + 1
tryCountLabel.text = "\(tryCount) / 5"
if randomValue == hitValue {
//print("YOU HIT!!")
showAlert(message: "YOU HIT!!")
reset()
return
}
if tryCount >= 5 {
//print("YOU LOSE..")
showAlert(message: "YOU LOSE...")
reset()
return
}
if randomValue > hitValue {
slider.minimumValue = Float(hitValue)
minimumValueLabel.text = String(hitValue)
} else if randomValue < hitValue {
slider.maximumValue = Float(hitValue)
maximumValueLabel.text = String(hitValue)
}
}
@IBAction func touchUpResetButton(_ sender : UIButton){
print("touch up reset button")
reset()
}
func reset() {
print("reset!")
randomValue = Int.random(in: 0...30)
print(randomValue)
tryCount = 0
tryCountLabel.text = "0 / 5"
slider.minimumValue = 0
slider.maximumValue = 30
slider.value = 15
minimumValueLabel.text = "0"
maximumValueLabel.text = "30"
sliderValueLabel.text = "15"
}
}
CreditViewCode
import UIKit
class CreditViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view.
}
@IBAction func touchUpDismissButton(_ sender: UIButton) {
dismiss(animated: true,
completion: nil)
}
非常に基本的ですが、アプリケーション開発のサイクル全体が感じられます.
Reference
この問題について((野熊先生の講義)デジタルソフトを当てる), 我々は、より多くの情報をここで見つけました
https://velog.io/@kkll135/숫자맞추기-어플
テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol
スライダを動かし、指定した数値をランダムに合わせます.
5回の機会内に完成しなければ.
答えが正しければ
ViewControllerCode
import UIKit
class ViewController: UIViewController {
var randomValue: Int = 0 //기본 할당값
var tryCount: Int = 0
@IBOutlet weak var slider: UISlider!
@IBOutlet weak var tryCountLabel: UILabel!
@IBOutlet weak var sliderValueLabel: UILabel!
@IBOutlet weak var minimumValueLabel: UILabel!
@IBOutlet weak var maximumValueLabel: UILabel!
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view.
slider.setThumbImage(#imageLiteral(resourceName: "slider_thumb"), for: .normal)
reset()
}
@IBAction func sliderValueChanged(_ sender : UISlider){
print(sender.value)
let integerValue: Int = Int(sender.value)
sliderValueLabel.text = String(integerValue)
}
func showAlert(message: String) {
let alert = UIAlertController(title: nil,
message: message,
preferredStyle: .alert)
let okAction = UIAlertAction(title: "Ok",
style: .default) { (action) in
self.reset()
}
alert.addAction(okAction)
present(alert, animated: true, completion: nil)
}
@IBAction func touchUpHitButton(_ sender : UIButton){
print(slider.value)
let hitValue: Int = Int(slider.value)
slider.value = Float(hitValue)
tryCount = tryCount + 1
tryCountLabel.text = "\(tryCount) / 5"
if randomValue == hitValue {
//print("YOU HIT!!")
showAlert(message: "YOU HIT!!")
reset()
return
}
if tryCount >= 5 {
//print("YOU LOSE..")
showAlert(message: "YOU LOSE...")
reset()
return
}
if randomValue > hitValue {
slider.minimumValue = Float(hitValue)
minimumValueLabel.text = String(hitValue)
} else if randomValue < hitValue {
slider.maximumValue = Float(hitValue)
maximumValueLabel.text = String(hitValue)
}
}
@IBAction func touchUpResetButton(_ sender : UIButton){
print("touch up reset button")
reset()
}
func reset() {
print("reset!")
randomValue = Int.random(in: 0...30)
print(randomValue)
tryCount = 0
tryCountLabel.text = "0 / 5"
slider.minimumValue = 0
slider.maximumValue = 30
slider.value = 15
minimumValueLabel.text = "0"
maximumValueLabel.text = "30"
sliderValueLabel.text = "15"
}
}
CreditViewCode
import UIKit
class CreditViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view.
}
@IBAction func touchUpDismissButton(_ sender: UIButton) {
dismiss(animated: true,
completion: nil)
}
非常に基本的ですが、アプリケーション開発のサイクル全体が感じられます.Reference
この問題について((野熊先生の講義)デジタルソフトを当てる), 我々は、より多くの情報をここで見つけました https://velog.io/@kkll135/숫자맞추기-어플テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol