0
다른 셀에 길게 누르는 제스처 인식기가있는 UICollectionView가 있습니다.서브 뷰에서 프레임을 설정하면 상호 작용이 비활성화됩니다.
두 개의 버튼이있는 하위 뷰가 있습니다.
하위 뷰
는 내 코드가 난 후, 난 그냥 부모 뷰와 상호 작용하는 모든 지점에서 프레임을 설정하지만 경우이- (IBAction)longPress:(UILongPressGestureRecognizer *)sender {
if (sender.state != UIGestureRecognizerStateBegan) {
return;
}
NSArray * views = [[NSBundle mainBundle] loadNibNamed:@"RoomEditIconOverlay" owner:self options:nil];
UIViewController * editViewController = [views objectAtIndex:0];
[self.view addSubview:editViewController.view];
[editViewController.view becomeFirstResponder];//Required
}
경우 상호 작용 할 수있다.
- (IBAction)longPress:(UILongPressGestureRecognizer *)sender {
if (sender.state != UIGestureRecognizerStateBegan) {
return;
}
NSArray * views = [[NSBundle mainBundle] loadNibNamed:@"RoomEditIconOverlay" owner:self options:nil];
UIViewController * editViewController = [views objectAtIndex:0];
[editViewController.view setFrame:CGRectMake(0, self.view.frame.size.height -500, self.view.frame.size.width ,168)];
[self.view addSubview:editViewController.view];
[editViewController.view becomeFirstResponder];
}
잘못된 위치 (애니메이션이없는 위치)에서 상호 작용할 수 있습니다. 또는 상호 작용없이 올바른 위치에 놓습니다.