2012-07-16 6 views
0

가능한 중복 :
How to stop responding to a shake before a button is pressed?버튼을 누른 후에 만 ​​흔들 수있는 방법은 무엇입니까?

나는 응용 프로그램을 가지고 있고 버튼 '재생'을 클릭 현재 경우 레이블 쇼의 말 문제는 내가 총 오전 '흔들어 플레이' 초보자 및 나는 그것을 주문하는 방법을 모르므로 사용자가 먼저 버튼을 눌러야 만합니다. 그러면 라벨 쇼가 표시되고, 사용자가 흔들면 라벨이 사라집니다. 그 이후로 앱의 다른 부분을 분류 했으므로 필요한 모든 것입니다. 도와 주신 분들께 감사드립니다. 답변을 설명 해주십시오. 감사합니다.

답변

0

확실한 방법은 iVar 또는 @property를 생성하는 것입니다. "Play"버튼을 클릭하고 iVar/@ 속성을 YES로 설정합니다. motionBegan : withEvent : 흔들림을 감지하는 곳에서 iVar/@ 속성이 YES가 아닌 경우 흔들기 동작을 수행하지 않고 간단히 돌아갑니다. 사용자가 적절한 시간에 흔들 렸음을 수락 할 때 레이블을 숨김으로 설정했습니다.

0

BOOL 유형의 인스턴스 변수를 만듭니다. 그것을, 말하자면, 연극이라고 부르십시오. 보기 컨트롤러의 viewDidLoad 메소드에서 NO로 설정하십시오. 재생 버튼을 터치하는 메서드에서 playIsTouched를 YES로 설정합니다. 흔들림을 처리하는 메서드에서 playIsTouched == YES 인 경우에만 레이블을 사라지게합니다. 동일한 방법으로 playIsTouched를 다시 NO로 설정할 수 있습니다 (사용자가 흔들기 전에 다시 버튼을 터치하려는 경우).