inflearn logo
강의

講義

知識共有

成功した本物のiOS開発者になる[基礎から実務まで]

Navigation

self.navigationBar.topItem?.leftBarButtonItem을 해도 button이 보이지 않습니다

592

uisong265592872714

投稿した質問数 4

0

스크린샷 2023-06-21 오후 10.49.56.png강사님의 코드와 똑같이 코드를 구성했는데 버튼이 보이지 않습니다

스크린샷 2023-06-21 오후 10.50.54.pngaddsubView방식은 보이는 상황입니다 ㅠㅠ

혹시 바뀐부분이있는걸까요

ios swift 동시성

回答 2

0

uisong265592872714

저도 14.3.1로 확인을 헀습니다

제가 강의를 스토리보드로 구현하신부분을 코드로 구현하고있어 아래사진과같은방식으로 tabbar에 넣어준부분빼고는 다른점이 전혀없는데 이쪽에서 이런방식으로 구현한게 문제가 될수있을까요... 다시한번 확인해도 코드는 똑같습니다...스크린샷 2023-06-21 오후 11.46.32.png
스크린샷 2023-06-21 오후 11.42.15.png

0

enilv0529

거의 정답을 찾긴 하셨네요 이유만 이해하시면 될 것 같습니다.

네비게이션 뷰컨을 생성할 때 스토리보드 사용 유무가 객체 생성되는 시간에 영향을 미칩니다.

좀 더 풀어서 설명드리자면

스토리보드 있는상태로 네비뷰컨을 만들때는 네비의 rootViewController가 스토리보드에 이미 있는 상태로 만들게 됩니다.

그 뜻은 네비뷰컨을 생성하자마자 바로 topItem도 생성됨을 의미하는 것이죠.

그래서 viewDidLoad시점에 navigationBar의 topItem객체가 존재하는걸 확인할 수 있고 그 곳에 내가 원하는 설정도 가능합니다.

 

하지만 스토리보드 없이 네비뷰컨을 만들면 rootViewController설정할때 바로 되는게 아닌 vc가 생성되고 난 후 rootViewController가 셋팅되게 됩니다.

그러니 네비뷰컨을 생성하자마자 topItem이 생길수가 없습니다.

약간의 시간이 더 필요하게 되는것이죠

그것이 스토리보드 없이 네비뷰컨을 만들었을 때 viewDidLoad에서 topItem이 없게 되는 차이를 만들게 됩니다.

 

말씀하신것 처럼 이런건 구글링해도 안나오는 내용이니 잘 알아두시면 앞으로 개발하실 때 많은 도움이 되실 겁니다.

 

 

0

enilv0529

안녕하세요

 

지금 다시 해봤는데 문제없이 잘 되는걸 확인했습니다.

Xcode버전이 어떻게 되시나요

제가 지금 테스트한 건 14.3.1입니다.

 

0

uisong265592872714

혹시몰라서 ViewController쪽에다가 해당코드를 넣어보니까 실행이되는 상황이라서 스크린샷 2023-06-22 오전 12.14.39.pngclass HomeNavigationViewController: UINavigationController 에 viewdidLoad안에다가 해당코드를 넣었을때는 실행이 안되고 왜 여기서는 실행이되는건지...

아무리 구글링을 해도 알수가없어서 혹시 예상하시는 이유가 있을까요

0

uisong265592872714

스크린샷 2023-06-22 오전 12.25.02.png해당 코드를 viewwillappear에 넣어주니 정상적으로 작동하는데 이유가 뭔지 잘 모르겠네요ㅠㅠ 혹시 생명주기를 고려해야할 이유가 있을까요/...?

패싱1강에서 강의중에 질문 있습니다.

0

72

2

table view 없음

0

99

2

에러 질문 [UITextField setDataSource:]: unrecognized selector sent to instance 0x107079600"

0

202

2

Main interface 지정 방법

0

168

1

Closure_3 Capture List에 참조 타입 값을 작성할 경우에도 deinit 실행되는 이유가 뭘까요?

0

171

2

TodoCell UIview 생성 후 연결 시 오류

0

415

2

테이블 뷰 데이터 업데이트 관련 질문

0

345

2

TODO List Coredata 질문입니다.

0

342

1

혹시 추가예정인 강의가 대략 언제쯤 나오는지 알수있을까요..?

0

359

1

swift에서 import 헤더를 안해도 되는이유가 궁금합니다.

1

620

1

closure 3 에서 weak로 준 부분이 궁금합니다.

0

320

1

concurrency_1 강의 코드 결과 중 이해가 안가는 부분이 있습니다

0

331

1

func 기능을 쓸때 self. 을 왜쓰는지 이해가 잘안되네요 ㅠㅠ

0

412

1

Closure2 강의에서 예문처럼 똑같이 myfunc2, myfunc3 만들었을때

0

373

1

클론강의 tableViewCell

0

404

1

Location.pin강의에서 self질문이요

1

253

1

넷플릭스 table cell 관련해서 질문이 있습니다.

0

503

1

Capturing Valus

0

295

1

안녕하세요 todolist강의중에서 UI구성중 xib파일 오토레이아웃질문입니다.

0

314

1

환율 강의 테이블뷰에서 데이터 관련 질문있습니다.

0

552

2

환율 네트워크처리1 질문있습니다.

0

274

1

변수 let 위치 질문입니다.

0

366

1

섹션 9 영상 잘림 확인 부탁드립니다

0

334

1

안녕하세요 강의내용 질문입니다.

0

380

1