내 응용 프로그램에서 사용자가 UIImageView
맵 (.PNG)을 볼 수있는 UIScrollview
이 있습니다. UIScrollView
은지도 주위의 이동 및 스크롤을 처리하는 데 사용됩니다.scrollview 내에서 이미지 뷰 내부에있는 uibutton을 누르십시오.
터치 할 때지도에 관심 장소 (버튼)를 '추가'할 수있게하려는 경우 UIScrollView
에 탭 수신기를 추가했습니다. 온 대신에 (체류를
[plattegrondImageview addSubview:plattegrondPunt];
이렇게 소자 스크롤 좋게 따라 이미지 :
UITapGestureRecognizer *tap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(tapGesture:)];
[myScrollview addGestureRecognizer:tap];
탭이 등록되면 I가있는 UIButton을 만들고 UIScrollView
내부 버튼 께 UIImageView
추가 주어진 좌표). 여태까지는 그런대로 잘됐다.
그러나 이제는 사용자가 '버튼'을 탭한 다음 (예 : 댓글을 입력 할 수있는 팝업 화면 열기) 사용자를 원합니다.
나는 수돗물을 수신하는 버튼에 대상을 추가 한 :
[poi addTarget:self action:@selector(puntTap:) forControlEvents:UIControlEventTouchUpInside];
을 이제 문제에 대한 :
사용자 탭 버튼에의 할 때마다
는, 셀렉터 (puntTap)이 제대로 발사한다 ,UIScrollview
의 기본 탭 제스처가 해고되었습니다.
popover
보기가 열릴뿐만 아니라 여분의 UIButton
요소가 화면에 표시됩니다.
UIScrollview
도 탭을 등록한다는 것은 논리적이지만,이 경우 원하지 않는 동작입니다. 사용자가 scrollview
안에 UIButton
을 두 드릴 때마다 scrollview
자체가 응답해서는 안됩니다.
시각화 레이어 :
->UIScrollview
----->UIImageView
---------->UIButton
나는 이미 scrollview에 대해 다음 속성을 사용했습니다.
myScrollview.userInteractionEnabled = YES;
myScrollview.canCancelContentTouches = YES;
myScrollview.delaysContentTouches = YES;
나는 내가 그것을 도청 버튼 아닌지 확인하기 위해합니다 (UIScrollview
의 탭 제스처 포함) 그러나 hitTest 같은 것을 할 수있는 것 같아요 -하지만 어쩌면 누군가는 '청소기'솔루션을 가지고있다?
이을 요약 (아무것도 내가 설정 화면이 방식에 대해 불분명 한 경우, 그렇게 말하십시오) : 사용자가 UIButton
에 탭하면, scrollview
의 GestureRecognizer
도 발사!
불행히도 트릭을하지 않는 것 같아서 scrollview/tap이 계속 발생합니다. 나는 단추에 그것을 설정했다. 그러나 그 실제로보기는 또한 위의 '터치'를 얻는다. (단추는 마지막으로 아래로보기이다.) – YDL