func name(name dataType) {
}
func greeting(whoToGreet: String){
print(”Hello \(whoToGreet)”)
}
greeting(whoToGreet: “Sally”)
switch hardness {
case “Soft”:
print(5)
case “Medium”:
print(7)
case “Hard”:
print(12)
default:
print(error)
}
switch는 조건이 5개 이상일 경우에 사용하면 좋다.
a…b (Closed range)
a..<b (Half open range)
…b (One sided range)
var dict: [String: Int] = [”Hello”: 1234]
다음은 완성된 앱의 코드이다!!!
Stack Over Flow에서 검색해서 나온 코드와
안젤라 선생님의 설명을 짬뽕해서 만들었다.
다행히 잘 작동한다 😘
걸리는 건 중간에 Xcode가 시키는대로 픽스버튼을 눌렀는데,
그 결과 많은 변수들에 self가 붙었다
파이썬 기초만 떼고 온 터라
이 self가 여기서 무슨 역할을 하는지 잘 감이 안온다...
파이썬에서는 이게 클래스에서
변수나 메소드 앞에 붙어서 무슨 기능을 하는 거였는데,,,
,,,, ^^
음...
뒤의 강의들 좀 더 듣고 좀더 레벨업 하면 이해되겠지?
^___^
import UIKit
import AVFoundation
class ViewController: UIViewController {
var player: AVAudioPlayer!
let eggTimes = ["Soft": 5, "Medium": 7, "Hard": 12]
var timer = Timer()
var totalTime = 0
@IBOutlet weak var progressBar: UIProgressView!
@IBOutlet weak var titleLabel: UILabel!
@IBAction func hardnessSelected(_ sender: UIButton) {
timer.invalidate()
titleLabel.text = "Progressing..."
let hardness = sender.currentTitle!
var secondsRemaining = eggTimes[hardness]! * 60
totalTime = eggTimes[hardness]! * 60
timer = Timer.scheduledTimer(withTimeInterval: 1.0, repeats: true) { (Timer) in
if secondsRemaining > 1 {
print ("\(secondsRemaining) seconds")
secondsRemaining -= 1
self.progressBar.progress = 1-Float(secondsRemaining)/Float(self.totalTime)
} else {
self.timer.invalidate()
self.progressBar.progress = 1
self.titleLabel.text = "DONE!"
self.playSound()
}
}
}
func playSound() {
let url = Bundle.main.url(forResource: "alarm_sound", withExtension: "mp3")
player = try! AVAudioPlayer(contentsOf: url!)
player.play()
}
}