【发布时间】:2014-02-16 22:15:54
【问题描述】:
所以我正在尝试使用使用 ALAssets 框架获取的图像缩略图来实现拖放。
我能够让长按手势正常工作(根据一些 NSLog 测试,它肯定会移动某些东西)但我一生都无法弄清楚如何实际显示缩略图图像并拖动它在主视图中。请注意,_dNewImageView 是作为属性添加到视图控制器的 IBOutlet。我正在尝试使用 BringSubviewToFront 将视图置于最前面:但是它没有按预期工作。任何帮助将不胜感激!
这是处理长按手势的函数:
-(void)longGestureRecognized:(UILongPressGestureRecognizer *)gestureRecognizer{
gestureRecognizer.delaysTouchesBegan = YES;
CGPoint newPoint = [gestureRecognizer locationInView:self.collectionView];
switch (gestureRecognizer.state) {
case UIGestureRecognizerStateBegan:
dIndexPath = [self.collectionView indexPathForItemAtPoint:newPoint];
if (dIndexPath == nil){
NSLog(@"Couldn't find index path");
}
dCell = (SKPhotoCell *)[self.collectionView cellForItemAtIndexPath:dIndexPath];
dImage = [UIImage imageWithCGImage:[dCell.asset thumbnail]];
_dNewImageView = [[UIImageView alloc] initWithImage:dImage];
[_dNewImageView setUserInteractionEnabled:YES];
[[self view] bringSubviewToFront:_dNewImageView];
break;
case UIGestureRecognizerStateChanged:
[_dNewImageView setCenter:newPoint];
break;
case UIGestureRecognizerStateEnded:
break;
}
}
【问题讨论】:
标签: objective-c drag-and-drop uiimageview long-press