2010-05-19 1 views
1

두 개의 단추가있는 기본보기에서 다음 이미지를 표시하고 이전 이미지를 표시하는 방법을 제어합니다. 이 경우 '이미지'는 UIImageView에서 상속 받고 상호 작용할 수있는 여러 그림이 있으며이 클래스를 '창'이라고합니다. 창 자체는 모든 사용자 상호 작용을 처리하지만 기본보기는 단추로 다음 및 이전 창을 제어합니다. 내 딜레마는 여기에 있습니다. 팬이 메인 뷰를 완전히 덮고 있기 때문에 사용자가 메인 뷰의 버튼을 탭할 수 있습니다. 따라서 창 하나가 팝업되면 버튼을 통해 창을 변경할 수 없습니다! 보기의 투명한 부분을 통해 감동을 줄 수있는 방법이 있습니까? 그렇지 않은 경우 어떻게해야합니까?iPhone SDK를 사용하면 여러보기에 영향을 줄 수 있습니다.

모든 단추 터치 메서드가 xib 파일에 만들어 졌기 때문에 touchesBegan 또는 해당 메서드 중 하나를 창에서 수퍼 뷰로 전달할 수 없습니다.

제어판과 상호 작용할 수 없기 때문에 제어판을 패널 아래에 삽입 할 수 없습니다. 그리고 내가 아는 한 터치 이벤트를 창 안의 모든 창에 전달할 수 없습니다. 기본보기에 속한 홀딩 배열

명령을 바꿀 수 있기 때문에 창 안에 명령 단추를 추가 할 수 없습니다. 버튼의 이미지가 지문으로 렌더링되어 다음/이전 창을 렌더링합니다.

나는 아주 오랫동안이 일에 매달 렸습니다. 누군가가 수정 작업을하거나 코드를 다시 작성하여 새로운 방법으로 작동하도록하십시오.

답변

0

단추가 이벤트를 캡처하도록하려면 해당 이벤트를 창 위에 겹쳐 놓으십시오. 패널 위에 컨트롤 패널을 놓을 수 없다고 말하면, 버튼을 창 위에 놓을 수있는 다른 뷰로 분리하십시오. 다른보기 아래에 단추를 표시하려면 완전히 투명 한 사용자 지정 단추를 만들어 맨 위에 놓을 수있는 작업을 처리하십시오.

버튼 터치 방식이 xib 파일에 만들어 졌음을 알 수는 없지만 일반적으로 터치 이벤트를 효과적으로 전달할 수는 없습니다. 이벤트를 수신 할보기가 논리적으로 맨 위에 오도록보기 계층 구조를 구성해야합니다. 그러나 맨 위에있는 뷰가 불투명하거나 가시적이어야한다는 것은 없습니다.

+0

버튼을 다른보기로 나누어 창 위쪽에 배치하면 새 단추보기가 그 아래보기에 대한 상호 작용을 차단하기 때문에 이전과 같은 상황이 생깁니다. – Parad0x13

+0

원터치를 원합니다. 동시에 두 개의보기와 상호 작용하여 두 개의 동작을 트리거 할 수 있습니까? – drawnonward

+0

예 예 – Parad0x13