'iOS 견습생'의 정보를 바탕으로 iOS를 배우다가, 네 번째 애플리케이션 'StoreSearch'의 '상세 팝업' 장을 공부하던 중 문제가 발생했습니다.
작성된 팝업 컨트롤러 뷰는 전면에 표시할 수 없으며 검색바, 네비게이션바에 의해 차단됩니다.
주로 사용되는 코드는 다음과 같습니다.
으아아아교과서에 나온 소스코드를 비교한 결과 차이점이 발견되지 않았습니다. . .
어떻게 해결해야 하나요? 감사합니다.
또 다른 문제는 다음 그림과 같이 테이블뷰가 슬라이드되면서 팝업 뷰도 슬라이드된다는 점입니다.
현재 코드는 github StoreSearch에 등록되어 있습니다. 감사합니다.
업데이트:
Xcode의 디버그 도구를 통해 샘플 프로그램과 제가 만든 프로그램을 비교한 결과 아래 그림과 같이 UI 레벨이 다르다는 것을 발견했습니다.
샘플 프로그램:
내 프로그램:
그림에서 볼 수 있듯이 팝업되는 UIView(GradientView)의 레벨은 UISearchBar와 동일한 레벨이어야 합니다.
그런 다음 관련 코드를 재빨리 주의 깊게 확인한 결과 "didSelectRowAtIndexPath"에서 popedView를 추가할 때 [self.view addSubview:controller.view];
가 [self.tableview addSubview:controller.view];
로 잘못 작성되어 오류가 발생하는 것을 발견했습니다.
이제 문제가 해결되었습니다. 모두 감사합니다.
문제가 해결되었습니다. UIViewController 수준이 잘못되었습니다.