처음 강의에 문제가 있다고 생각하지 않습니다! 우리는 계산기를 만들고 있습니다 (이 시점에서는 계산기로서 기능하지 않습니다). Mine은 performOperation 함수가 추가 될 때까지 제대로 작동했습니다. 이제 "이 클래스는 키 값을 준수하지 않는 코드"오류가 발생합니다. 문제는, 내가 볼 수있는 한 내 코드는 클래스에서 사용중인 코드를 정확히 복제한다는 것입니다. 나는 뭔가를 놓치고 있어야하지만 차이를 찾기 위해 대략 50 번 체크했는데 하나를 찾을 수 없다. 도움? 그것은 매번 충돌하고 있습니다.cs193p 스위프트 키 값 코딩 오류
import UIKit
class ViewController: UIViewController {
@IBOutlet weak var display: UILabel!
var userIsInTheMiddleOfTyping = false
@IBAction func touchDigit(sender: UIButton) {
let digit = sender.currentTitle!
if userIsInTheMiddleOfTyping {
let textCurrentlyInDisplay = display.text!
display.text = textCurrentlyInDisplay + digit
} else {
display.text = digit
}
userIsInTheMiddleOfTyping = true
}
@IBAction func performOperation(sender: UIButton) {
userIsInTheMiddleOfTyping = false
if let mathematicalSymbol = sender.currentTitle {
if mathematicalSymbol == "π" {
display.text = String(M_PI)
}
}
}
}
편집 : 코드 형식
나는 당신이 인터페이스 빌더를 사용하여 만든 계산기의 스크린 샷을 포함 할 경우 도움이 될 것이라고 생각합니다. 귀하의 코드는 나에게 잘 보인다. 또한 언제이 오류가 발생합니까? 버튼을 누른 후에? – Suhaib
여기에 게시 할 때주의하십시오. 제목을 편집하여 질문의 성격을 정확하게 설명하십시오. 스택 오버플로는 자유 토론 그룹보다는 프로그래밍 질문 위키 백과를 더 많이 의미합니다. –
코드에서 @IBOutlet을 삭제하거나 이름을 바꾸면 오류가 발생합니다. 스토리 보드에서 ViewController를 클릭 한 다음 Xcode의 오른쪽 패널에있는 Connections Inspector에서 연결을 확인하십시오. 연결되지 않은 콘센트에는! 그 옆에. 그 옆에있는 x를 클릭하여 연결을 삭제하고 다시 연결하십시오. – vacawama