[iOS] 시간표 프로젝트 - 4

한지석·2022년 1월 18일
0

iOS

목록 보기
4/12

요즘 프로젝트를 진행하다가 갑자기 헤이해진 느낌이 든다. 다시 열심히 해야겠다. 물론 저번주는 코로나 3차 후유증과.. 술병으로 인한 헤이함이지만 1일 1커밋은 놓치지 않으려고 하고 있다.

발생한 문제 - pickerView, UITextField

1. pickerView에서 발생한 문제

pickerView에서 문제가 발생했다(!!). 어떤 문제였냐면 시간표 생성화면 진입 후에 학기나 연도를 고를 때 하단에 피커뷰가 나와야 하는데 나오지 않았다. 문제는 다른 프로젝트에서 똑같은 코드를 작성하면 정상적으로 실행된다.. 구글링, 유투브 모든 서치는 다 해봤지만 답을 찾지 못했다.. 그래서 내가 대안책으로 발견한 것은 .. DropDown 이다.

DropDown

내가 DropDown으로 해주고 싶은 작업은 유저가 연도와 학기, 시간표 이름을 설정한 후 유저가 실시간으로 저장하는 본인의 시간표를 내부 DB에 넣는 작업을 하려고 한다. DropDown으로 현재 구성한 UI는 . .!

이것이다. 아래에 작게 보이지만 연도와 학기를 반환해주고, 이 데이터들을 내부 DB에 넣어주는 작업을 진행했다.!

위 코드가 DropDown을 사용하기 위한 코드다. dropDown1 = 연도 / dropDown2 = 학기로 구성되있다.

현재 진행상황은 연도, 학기, 시간표 이름을 입력 후 완료 버튼을 누르면 내부 DB에 저장이 된다. 추가적으로 필요한 작업은 유저가 시간표 추가를 하면 그 데이터까지 DB로 보내주는 작업이 필요하다.

2. UITextField에서 발생한 문제

위의 시간표 이름을 입력하는 과정에서 발생한 문제이다. 바로 입력이 되지 않는것(!!)이다. 그 이유를 알아보니 ..
--> SceneDelegate 파일의 func scene 내부 코드인
guard let windowScene = (scene as? UIWindowScene) else { return } 을 삭제하고
let windowScene = UIWindowScene(session: session, connectionOptions: connectionOptions) 코드로 대체했었다.
정확한 이유는 모르겠으나 stackoverflow에서 확인한 글로는 내가 삭제한 코드를 다시 작성하고 아래 코드를 삭제하면 정상적으로 입력이 된다고 써있기에 한번 진행해봤는데.. 역시 되었다. 구글링을 생활화하자!!

profile
한지석일대기

0개의 댓글