質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
iOS

iOSとは、Apple製のスマートフォンであるiPhoneやタブレット端末のiPadに搭載しているオペレーションシステム(OS)です。その他にもiPod touch・Apple TVにも搭載されています。

Swift

Swiftは、アップルのiOSおよびOS Xのためのプログラミング言語で、Objective-CやObjective-C++と共存することが意図されています

Q&A

1回答

870閲覧

アラームを作ろうとしたところ「fatal error: unexpectedly found nil while unwrapping an Optional value (lldb)」が出る

sangaku

総合スコア10

iOS

iOSとは、Apple製のスマートフォンであるiPhoneやタブレット端末のiPadに搭載しているオペレーションシステム(OS)です。その他にもiPod touch・Apple TVにも搭載されています。

Swift

Swiftは、アップルのiOSおよびOS Xのためのプログラミング言語で、Objective-CやObjective-C++と共存することが意図されています

0グッド

0クリップ

投稿2018/10/24 05:31

編集2022/01/12 10:55

前提・実現したいこと

swift言語を用いて簡単なアラームを作っています。
試しに実行すると以下のエラーメッセージが発生しました。

発生している問題・エラーメッセージ

fatal error: unexpectedly found nil while unwrapping an Optional value
(lldb)

該当のソースコード

myLabel.text = getNowTime()

import UIKit //アラーム class ViewController: UIViewController { override func viewDidLoad() { super.viewDidLoad() // Do any additional setup after loading the view, typically from a nib. // 起動した時点の時刻をmyLabelに反映 myLabel.text = getNowTime() // 時間管理してくれる _ = NSTimer.scheduledTimerWithTimeInterval(60, target: self, selector: "update", userInfo: nil, repeats: true) } override func didReceiveMemoryWarning() { super.didReceiveMemoryWarning() // Dispose of any resources that can be recreated. } @IBOutlet weak var myLabel: UILabel! @IBOutlet weak var myDP: UIDatePicker! private var tempTime: String = "00:00" private var setTime: String = "00:00" @IBAction func myDPfunc(sender: AnyObject) { // test print print("時間を設定中...") // DPの値を成形 let format = NSDateFormatter() format.dateFormat = "HH:mm" // 一時的にDPの値を保持 tempTime = format.stringFromDate(myDP.date) } @IBAction func myButtonfunc(sender: AnyObject) { // アラームをセット setTime = tempTime // test print print("時間を指定しました。") } func getNowTime()-> String { // 現在時刻を取得 let nowTime: NSDate = NSDate() // 成形する let format = NSDateFormatter() format.dateFormat = "HH:mm" let nowTimeStr = format.stringFromDate(nowTime) // 成形した時刻を文字列として返す return nowTimeStr } func update() { // 現在時刻を取得 let str = getNowTime() // myLabelに反映 myLabel.text = str // アラーム鳴らすか判断 myAlarm(str) } func myAlarm(str: String) { // 現在時刻が設定時刻と一緒なら if str == setTime{ alert() } } // アラートの表示 func alert() { let myAlert = UIAlertController(title: "alert", message: "ring ding", preferredStyle: .Alert) let myAction = UIAlertAction(title: "dong", style: .Default) { action in print("foo!!") } myAlert.addAction(myAction) presentViewController(myAlert, animated: true, completion: nil) } }

試したこと

思いつくことはすべて試したのですが、初めての言語を使う為わからない部分が多く困っています

補足情報(FW/ツールのバージョンなど)

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

fuzzball

2018/10/24 05:36

「思いつくことはすべて試したのですが」←何をやったか具体的に書いて下さい。
guest

回答1

0

myLabelのアウトレットが繋がっていないのではないでしょうか?

投稿2018/10/24 05:36

fuzzball

総合スコア16731

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問