2013-07-28 5 views
0

나는 아주 간단한 스토리 보드 here을 가지고 있습니다. 이것에 관련된 코드는 아직 없습니다. 내가 겪고있는 문제는 "Flip Horizontal"로 전환 할 때 텍스트 필드가 비활성화 된 이유입니다. 즉, 텍스트 필드를 클릭해도 키보드가 나타나지 않습니다. 이것은 다음과 같은 순서로 트리거됩니다 : 텍스트 필드를 클릭하면 키보드 팝업 -> 다음에 히트 -> 텍스트 필드를 클릭 키보드 팝업 -> 텍스트 필드를 다시 누르십시오 ->키보드가 더 이상 팝업되지 않습니다 그 후 화면 사이를 클릭하고 텍스트 필드를 클릭해도 작동하지 않습니다 (예 : 키보드가 나타나지 않음). 기본 전환을 사용하면 정상적으로 작동합니다.iOS Storyboard flip horizontal animation은 텍스트 필드를 사용하지 않습니다.

왜 그런지에 대한 아이디어가 있습니까?

답변

1

문제가 확실하지 않지만 스토리 보드 설정이 잘못되었습니다. 당신은 모달을 뒤적 거리는 것처럼 보입니다. 여러분이 할 때마다, 당신은 앞으로 갈보기 컨트롤러의 새로운 인스턴스를 만들고 있으므로 점점 더 많은 컨트롤러가 쌓이게되며, 어느 컨트롤러도 할당 해제되지 않습니다. 긴장을 풀지 않는 segue를 사용하지 않는 한, segues가있는 스토리 보드에서 뒤로 이동해서는 안됩니다. 따라서 컨트롤러에서 ViewController로 돌아 가면 코드에서 [self dismissViewControllerAnimated : completion :]을 사용하고 segue를 제거해야합니다.

+0

아직 iOS 개발을 배우고 있습니다. 내 이해는 모달 섹슈를 사용하여 한 뷰에서 다른 뷰로 전환하면 이전 뷰의 모든 리소스가 즉시 삭제되므로 새 인스턴스를 만들면 더미가 생성되지는 않지만 그럴 수는 없다고 생각합니다. 이러한 종류의 탐색을 수행하는 데 권장되는 방법은 무엇입니까? 본질적으로 당신이보기를 떠나면 나는 모든 자원을 파괴하지 않을 것입니다. 나는 안드로이드 배경을 가지고 있으며 활동이 백 스택에 머무르거나 전환시 파괴되기를 원하면 지정할 수있는 방법이 있습니다. 여기에 비슷한 것이 있습니까? – Naveed

+0

@NaveedKhan, 모달보기 컨트롤러를 닫을 때 강력한 참조를 유지하지 않으면 모달보기 컨트롤러가 할당 취소됩니다. 네비게이션 컨트롤러의 스택에서보기 컨트롤러를 팝하는 경우에도 마찬가지입니다. 모달 세그먼트 또는 푸시 세그먼트의 소스 뷰 컨트롤러를 할당 해제 할 방법이 없습니다. 모달의 경우 해당 소스 컨트롤러는 여전히 윈도우의 루트보기 컨트롤러이며 푸시의 경우 소스 컨트롤러는 탐색 컨트롤러의 스택에 남아 있습니다. 트랜지션의 소스 뷰 컨트롤러가 할당 해제되기를 원한다면 ... (아래 계속) – rdelmar

+0

윈도우의 루트 뷰 컨트롤러를 변경하고 직접 애니메이션을 수행해야합니다. – rdelmar