2016-05-26 12 views
-3

時間/分関数に変換しますコードから、私は0から開始し、時間と分に変換する第2のカウンターを変換しようとしていた。私は本当に問題が何であるか分からない。EXC_BAD_INSTRUCTION(コード= EXC_I386_INVOP、サブコード= 0x0の)秒には、私は、エラーメッセージを持っ

let secondsQuantity = HKQuantity(unit: HKUnit.secondUnit(), doubleValue: seconds) 
var str_1 = secondsQuantity.description 
let range1 = str_1.rangeOfString("s") 
str_1.removeRange(range1!) 
h = Int(str_1)!/3600 
m = (Int(str_1)! % 3600)/60 
s = Int(str_1)! % 60 
let hour = "\(h) Hours, " 
let min = "\(m) Minutes, " 
let sec = "\(s) Seconds" 
let sentance = "Time: " + hour + min + sec 
timeLabel.text = sentence 
+1

おそらくrange1はありませんか? – onnoweb

+1

'!'でオプションのアンラップを強制するので、値がnilのときにクラッシュします。これは期待どおりに動作しています。 – Moritz

+0

http://www.raywenderlich.com/10209/my-app-crashed-now-what-part-1にアクセスしてクラッシュをデバッグする方法を学びます。 – rmaddy

答えて

0

使用する前に、range1がnilであるかどうかを確認する必要があります。 はその上で、私はあなたがやってみてくださいすることをお勧めします:あなたが先に行くと、H = INT(str_1が)を行う前に、

if let strIng = Int(str_q) 

!/3600

+0

変数の値をチェックした後、ゼロがあります。今修正されました。ありがとうございました。 –

関連する問題