2013-07-29 4 views
0

기본적으로 'Boggle'보드 게임과 같은 모양의 iOS 용 게임, 기본적으로 터치로 스 와이프 할 수있는 숫자의 4x4 그리드, 터치를 움직이면 메인 프로그램으로 되돌아 가야하는 이벤트 구조를 터치하고 '타일'의 ID/내용을 스 와이프하여 '선택'하여 사용자가 선택한 시각적 피드백을 갖도록합니다 (이것은 내 질문입니다. .. 이것을 어떻게 달성하는지). 타일은 버튼이나 라벨 일 수 있습니다.4x4 iOS 타일에서 터치 다운, 터치 업, touchmove 이벤트 감지

Windows Phone과 PC 플랫폼에서 터치 다운/위로/이동 이벤트를 폼 자체와 관련 지을 수있었습니다. '직접 건너 뛰기'또는 '아래로 밀어 내기', '건너 뛰기' 또는 레이블을 '위로'표시하고 관련 다운/업/이동 작업으로 이벤트를 연결하는 것이 간단하다는 점을 알았지 만 제스처 및 터치 업/터치 기능을 연구 했음에도 불구하고 iOS에서이를 수행하는 방법을 파악할 수 없습니다. 패러다임을 옮기고 패러다임을 옮기고 Windows에서 찾은 방식대로 작동하지 않는 여러 가지 제스처 프로젝트를 만듭니다. http://www.wintellect.com/CS/blogs/jprosise/archive/2011/01/14/building-touch-interfaces-for-windows-phones-part-2.aspx 버튼 대신 버튼을 사용해야한다고 생각합니다. 지금은 간단한 버튼 터치로 게임을 구현했지만, 한 번의 스 와이프로 인접한 레이블 세트를 선택할 수없는 경우 게임에서 현대적인 UI 느낌과 자연스러운 UI 제한이 많이 손실됩니다. 은 정말로에 도움을 주실 수 있습니까?

+0

작업 중 ... –

답변

0

간단!

/* Lots of code that didn't work, see old version if you want */ 

아니요, 그렇게 간단하지 않았습니다. 있는 UIButton이 이벤트를 강재 것 같습니다 ..

내가 (영리한 오류의 대답은 또한 지적으로) 처리 UILabels 및 사용자 정의 터치, GitHub의에 게시와 함께, UIView의 하위 클래스를 만들어 ..so : https://github.com/LeonardPauli/LPSwipeableInputMatrixView

는 테스트 및 작업 . 그러나 전혀 완벽하지는 않습니다. 리메이크하기가 아주 쉬워야합니다.

행운을 빈다. :)

+0

2 차원 솔루션을 시도했을 때 j 반복자에서 버그를 발견했습니다. (int j = 0 ; j mikewilm

+0

오, 죄송합니다. 그 오타가 보이지 않았다. 나는 그것의 응용 프로그램을 만들려고 노력할 것입니다 ... –

+0

아하하 !!! [self.view addSubview : btn]; 그리고 -1은 실종되었다 ... –

1

UIView의 하위 클래스 인 GameBoardView을 만들 것입니다. 이렇게하면 4x4 그리드의 모든 라벨이 하위보기로 표시됩니다. 그런 다음 GameBoardView에서 터치 이벤트를 처리하기 위해 다음 메소드를 구현할 수 있습니다.

– touchesBegan:withEvent: 
– touchesMoved:withEvent: 
– touchesEnded:withEvent: 
– touchesCancelled:withEvent: 

이러한 방법은 UIView의 슈퍼 클래스입니다 그리고 당신은 당신의 자신의 터치 기반의 로직을 수행 할 수 있도록 오버라이드 (override) 할 의미 UIResponder에 있습니다.

+0

UI 뷰를 서브 클래스 화하는 방법을 잘 모르겠지만이 기사를 찾았으므로 첫 번째 대답에 대해 이야기하고 있습니다. http : // www.raywenderlich.com/1768/how-to-make-a-custom-u-iew-a-custom-uiview-a-5-star-rating-view – mikewilm

관련 문제