お世話になります。
前提・実現したいこと
1.XCodeのストーリーボードに、二枚のビューコントローラーを置き、それぞれにボタンを一つずつおきます。ストーリーボード上で、このボタンを押すと、一枚目と二枚目の表示が切り替わるようにしました。→ここは正常に動作しました。
2.アプリの起動時に、NSUserDefaultsから文字列を取得し、二枚目に貼り付けたテキストビューに格納しようと改装しましたが、これを起動すると、エラーとなりました。
どうすれば、このエラーが解消されますか。
発生している問題・エラーメッセージ
ウインドウ右下のメッセージ欄に、
fatal error: unexpectedly found nil while unwrapping an Optional value
と出ており、エラーが出た箇所の右側に、
Thread 1:EXC_BAD_INSTRUCTION(code=EXC_1386_INVOP,subcode==0x0)
と出ました。
該当のソースコード
swift
1// 2// ViewController.swift 3// DayReportMaker 4// 5// Created by Apple on 2018/05/05. 6// Copyright (c) 2018年 Mitsuyoshi.kobayashi. All rights reserved. 7// 8 9import UIKit 10 11 12class ViewController: UIViewController { 13 14 override func viewDidLoad() { 15 super.viewDidLoad() 16 // Do any additional setup after loading the view, typically from a nib. 17 18 let WorkNameLen=NSUserDefaults.standardUserDefaults().stringForKey("WorkNameLen") 19 if WorkNameLen==nil{ 20 TextViewWorkName.text=""}//ここでエラー 21 else {TextViewWorkName.text=WorkNameLen} 22 } 23 24 override func didReceiveMemoryWarning() { 25 super.didReceiveMemoryWarning() 26 // Dispose of any resources that can be recreated. 27 } 28 29 //二枚目のボタンを押すと、テキストビューの文字列をNSUserDefaultsに保存する 30 @IBAction func PressButtonToListView(sender: AnyObject) { 31 NSUserDefaults.standardUserDefaults().setObject(TextViewWorkName.text, forKey: "WorkNameLen") 32 } 33 34 //二枚目のテキストビューと紐づく 35 @IBOutlet weak var TextViewWorkName: UITextView! 36 37} 38
試したこと
swiftどころか、macさえも扱い始めてから日が浅いので、試すための方針が見つからず、困っています。
補足情報(FW/ツールのバージョンなど)
MacBookAir使用 OSは10.11.6
Xcodeは6.3を使用
よろしくお願い申し上げます。
回答1件
あなたの回答
tips
プレビュー