Swift개발 ) Thread 1 : Fatal error 처리

2023. 7. 4. 04:09·앱/Swift

스위프트 개발을 하다가 갑자기 다음과 같은 에러가 났다.

👉
Thread 1: Fatal error: Unexpectedly found nil while unwrapping an Optional value

당연하게도 구글에 검색을 해봤는데,

찾아보니 제대로된 해결법을 시원하게 설명해주는게 아니라 잡소리가 너무많아서 내가 작성을 해두기로 했다.

오류 코드를 읽어보면, 옵셔널 벨류값에 언래핑을 해주었지만, nil값이 들어가기 때문에 문제가 발생한다고 되어있지만. 실제 문제는 코드의 위치의 문제에서 발생한다.

다음과 같은 문제점은 스토리보드에서 연결할때, 잘못해준 경우에 발생하는것이다.

그래서 연결을 삭제 해주고, 클래스 내부에 함수 밖 독자적으로 연결을 해준 다음, 코드를 입력하면 문제를 해결 할수 있다.

나의 경우에는 class viewDidLoad()안에 IBAction을 지정해주어서 발생한 문제였다.

따라서 해당 코드를 삭제하고( 당연하게도 코드 연결도 끊어줘야함! 이게 매우 중요)

다시 선언을 해주니 문제를 해결하였다.


코드연결 끊어주기

ios앱 개발할때 흔히 하는 실수 중 하나가 연결을 해두고, 코드를 작성하다가 삭제를 하고 다시 코드를 연결해주었을때, 코드연결이 이중으로 되어있어서(완벽하게 삭제가 되지않아) 크래쉬가 발생하는 경우가 많다.

따라서 코드를 삭제할때는 연결을 해제해주는것을 잊으면 안된다.

예시

이렇게 player이라는 코드와, button을 연결해두었을때, 해당코드만을 삭제한다고 연결이 끊어지는게 아니다.

반드시 우측 인스팩터에서 received Action부분에 혹은, segues, outlet에 연결되어있는 연결을 x 버튼을 통해 연결을 끊어주어야 한다.

연결을 끊어주면 위에와 같이 IBAction 혹은 IBOutlet앞에 있는 저 원형이 투명하게 바뀐다.

그러면 연결이 끊어진것.

이렇게 해야 코드를 지워도 오류가 발생하지 않는다.


Uploaded by N2T

반응형

'앱 > Swift' 카테고리의 다른 글

Singleton에서 Protocol을 이용한 의존성 개선 방법  (0) 2023.07.04
Swift) 타입으로서의 Protocol 이를 이용한 Singleton 의존성 개선  (0) 2023.07.04
타입으로서의 Protocol 그리고 싱글톤 의존성 개선  (0) 2023.04.09
Swift) Static Dispatch, Dynamic Dispatch이란?  (0) 2023.04.09
SwiftUI) ObservableObject, ObservedObject, SateObject, Published 에 관하여  (0) 2023.03.27
'앱/Swift' 카테고리의 다른 글
  • Singleton에서 Protocol을 이용한 의존성 개선 방법
  • Swift) 타입으로서의 Protocol 이를 이용한 Singleton 의존성 개선
  • 타입으로서의 Protocol 그리고 싱글톤 의존성 개선
  • Swift) Static Dispatch, Dynamic Dispatch이란?
진ddang
진ddang
안녕하세요 진땅의 개발자 블로그 입니다. 피드백은 환영입니다. 깃헙 : https://github.com/it794613
    반응형
  • 진ddang
    맛동산이
    진ddang
  • 전체
    오늘
    어제
    • 분류 전체보기 (199)
      • 일기 그리고 목표 (1)
      • 웹 (20)
        • 리액트 (19)
      • 앱 (115)
        • Swift 문법 (15)
        • Swift (65)
        • SwiftUI (32)
        • 리액트 네이티브 (3)
      • CS (30)
        • 컴퓨터그래픽스 (8)
        • 운영체제 (6)
        • 네트워크 (16)
      • 알고리즘 (13)
        • 백준 (12)
        • 프로그래머스 (1)
      • 대외활동 (7)
        • ict한이음(2022.04) (2)
        • 멋쟁이 사자처럼 (5)
        • Apple Developer Academy (0)
      • 다양한 내용들 (8)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    운영체제
    문법
    위젯킷
    영남대
    cs
    spritekit
    리액트
    멋사
    dispatchqueue
    c++
    TCA
    composable architecture
    uikit
    알고리즘
    Protocol
    Swift
    ReactorKit
    백준
    SwiftUI
    멋쟁이사자처럼
    스유
    widget
    네트워크
    스위프트
    컴퓨터그래픽스
    후기
    swift concurrency
    widgetkit
    웹
    대외활동
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
진ddang
Swift개발 ) Thread 1 : Fatal error 처리
상단으로

티스토리툴바