일부보기의 하위보기를 다른보기가 아닌보기 경계에 클립합니다. 얼마나 쉽고 빠르게 구현할 것인가에 대한 아이디어.UIView에 대해 "선택적"clipToBounds를 구현하는 방법, 즉 일부 하위 뷰는 클립 만하고 다른 뷰는 클립하지 않습니다.
컨텍스트 : 뷰에서 드래그 할 수있는 하위 뷰 집합이있는 UIScrollView가 있습니다. 뷰에서 뷰를 드래그 할 때 하위 뷰를 클리핑되지 않도록하고 싶습니다. 그렇지 않으면 나는 그들을 잘라내기를 원한다.
- 서브 뷰를 레이아웃하기 전에 [view setClipToBounds : YES]를 수행하면 서브 뷰를 끌 때까지 모두 정상입니다. 드래그가 시작되면 touchesBegan : withEvent에서 [view setClipToBounds : NO]를 수행하고 touchesEnded : withEvent :에서 [view setClipToBounds : YES]를 수행하면 드래그 중에 스크롤 뷰가 다시 그려져 이전에 클리핑 된 하위 뷰가 표시됩니다.
- 내가 시도했으나 작동하지 않은 한 가지 방법은 끌기가 시작되면 바로 scrollview의 하위보기를 scrollview의 superview로 이동하는 것입니다 (하위보기의 touchesBegan : withEvent에서). 그러나보기를 한보기에서 다른보기로 이동할 때 터치 감을 잃어 버리고 끌기가 끝나는 것처럼 보입니다.
UIScrollViewDelegate 메서드에서 구현하지 않는 이유는 무엇입니까? – Felix
"업데이트"를 대답에 넣고 동의해야합니다. –
감사합니다. 제시. 나는 당신의 충고를 받아 들였습니다. – Obliquely