卡布奇诺拖拽错误

时间:2012-11-14 18:15:10

标签: cappuccino

我正在尝试在卡布奇诺中实现拖放操作,但是当我在CPView上删除图像时仍然出现错误,我从下面的控制台复制了错误消息。

CPInvalidArgumentException: - [CPImage removeFromSuperview]无法识别的选择器发送到实例0x0051bd

我正在从CPCollectionView中拖动一个图像,该图像包含在CPScrollView中并将其放在CPView上。我按照ScrapBook教程中的示例进行了操作。

下面是我的CPView上用于删除的代码,此代码导致控制台的输出

- (void)performDragOperation:(CPDraggingInfo)aSender
{
    var data = [[aSender draggingPasteboard] dataForType:PhotoDragType];
    [self addSubview:[CPKeyedUnarchiver unarchiveObjectWithData:data]];
}

我在AppController.j中定义了我的拖动类型,因为我的CPScrollView被定义了,不知道这是否导致了这个问题。

感谢。

1 个答案:

答案 0 :(得分:1)

拖放粘贴板中的内容不是视图,它是集合视图项的representObject。 (在您的情况下是一个CPImage对象)。

这里的解决方案是创建一个新的CPImageView并将其添加到drop视图,然后将该图像视图的图像设置为粘贴板数据(假设它始终是图像)。