-1

GitHub에서 다운로드 한 사용자 정의 캘린더에서 작업하고 있습니다. UICollectionView가 날짜 셀을 표시하기 위해 추가 된 사용자 정의보기입니다. 여러 날짜 값을 가져 오기 위해 셀 위로 드래그하는 기능을 추가하고 있습니다. 이를 위해 나는 yes로 길게 누르면 제스처 및 설정 동시 제스처 인식기를 추가 한, UILongpressgestureUICollectionView에서 긴 제스처 및 팬 제스처

내가 무엇을 시도했다

,

위의 코드에서
@property (nonatomic, strong) UILongPressGestureRecognizer *dragDateGesture; 

self.dragDateGesture = [[UILongPressGestureRecognizer alloc] initWithTarget:self action:@selector(handleDragBeginDate:)]; 
self.dragDateGesture.delegate = self; 
self.dragDateGesture.minimumPressDuration = 0.05; 
[self.collectionView addGestureRecognizer:self.dragDateGesture]; 

- (BOOL)gestureRecognizerShouldBegin:(UIGestureRecognizer *)recognizer 
{ 
return YES; 
} 
- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldRecognizeSimultaneouslyWithGestureRecognizer:(UIGestureRecognizer *)otherGestureRecognizer{ 
return YES; 
} 
- (void)handleDragBeginDate:(UIPanGestureRecognizer *)recognizer 
{ 
NSLog(@"Gesture recognised"); 
} 

을 추가했습니다. 긴 언론 제스처를 추가해도 UIPanGestureRecognizer getter를 사용하여 handleDragBeginDate 메서드를 호출할지 여부는 확실하지 않습니다. 나는 몸짓 개념을 처음 사용합니다. 콜렉션 뷰 위로 드래그하는 동안이 메소드를 호출하지 않습니다.

여기에 어떤 문제가있을 수 있습니까? 아무도 날 이걸 안내 할 수 있습니까?

진행 방법이 잘못 되었다면 새로운 제안을 보내 주시면 대단히 감사하겠습니다.

+0

. 그것은 시뮬레이터에서 작동합니다. 하지만 그 코드를 내 사용자 정의 캘린더로 옮길 수는 없습니다 ... –

답변

1

내가 아는 한 컬렉션보기에는 테이블보기와 비슷한 편집 모드가 없습니다. 다행히도 someone has already solved this problem for you.

+0

감사에하고 싶은

-(void)scrollViewDidScroll:(UIScrollView *)scrollView; 
NAZIK

+0

@NAZIK이 일을 방해하는 것은 무엇입니까? – lawicko

+0

사용자 정의보기에서 UILongPressGestureRecognizer를 추가하는 대신 솔루션을 찾았습니다. 뷰 콘트롤러에 추가하고 collectionview에 제스처를 추가했습니다. 이제 제안서가 도움이됩니다. – NAZIK

1

UICollectionView은 고유 한 panGestureRecognizerpinchGestureRecognizer입니다. 따라서 추가 할 필요가 없습니다. 델리게이트 함수에서 터치 이벤트를 얻는 것이 좋습니다. 이 다음 중 하나입니다

, 내가 드래그 옵션이있는 사용자 정의 달력, https://github.com/Glow-Inc/GLCalendarView를 발견했습니다 당신이 일정 답장을 보내