Xcodeプロジェクトに何らかのエラーがあります。私は変数にのみ問題がありました。私はintにtxt文字列変数を変換し、これはtxtintと呼ばれます。私は計算をしたいとき、それはnull値を持っているのでできません。なぜなら、関数 "pass"で値を与えてからtxtintがnull値をとっているので、私が引く必要がないからです。スウィフトコードの変数エラー
//
// ViewController.swift
// Biophere
//
// Created by Coder on 2017. 10. 22..
// Copyright © 2017. Pliz Help. All rights reserved.
//
import UIKit
class ViewController: UIViewController {
@IBOutlet weak var label: UILabel!
@IBOutlet weak var textview: UITextField!
@IBOutlet weak var conv: UILabel!
var text: String? = nil
var txt: String? = nil
var convert: String? = nil
var textint: Int? = nil
var txtint: Int? = nil
@IBAction func pass(_ sender: Any) {
var txt: String {
get {
return textview.text ?? ""
}
set {
textview.text = newValue
}
}
//conv.text = txt
}
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
label.text = text
txt = textview.text
}
@IBAction func saveButton(_ sender: Any) {
let textint = Int(text!)
let txtint = Int(txt!)
convert = String(textint! - txtint!)
conv.text = txt
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
}
ERROR:スレッド1:EXC_BAD_INSTRUCTION(コード= EXC_I386_INVOP、サブコード= 0x0の)
あなたが投稿したコードからは、オプションの "text"変数に有効な値を置くことは決してありません。それでも、それがまだnilのときはviewDidLoadで使用するだけです。これは、saveButtonメソッドでアンラッピングするとアプリケーションがクラッシュすることを意味します。 あなたは何を正確にしたいのか説明できますか? –
"nil"と宣言するのではなく単に空白として定義するだけです。 var text = ""およびvar textint = 0。コンプライアーは自動的に変数のタイプを扱います。 –