iOS自定义单元长手势识别器

时间:2013-10-29 12:25:09

标签: ios uigesturerecognizer custom-cell

请帮我弄清楚魔法是怎么回事。我有一个带自定义单元格的tableView。我不需要处理长按,但当一个程序发生时,程序崩溃并显示消息:

  

异常'NSInvalidArgumentException',原因:' - [__ NSCFType   gestureRecognizerShouldBegin:]:发送到实例的无法识别的选择器   0xa0836a0'

我在Crash while long press on the tableview找到了类似的问题,但这个解决方案对我没有帮助。实际上,当我尝试添加自己的长手势识别器时,我的处理函数不会被调用。只是一次又一次地烦恼。

我在这里做的更精确:在

  
      
  • (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
  •   

在返回单元格之前我有以下几行:

  

UILongPressGestureRecognizer * longPressGesture =       [[UILongPressGestureRecognizer alloc] initWithTarget:self   动作:@selector(handleLongPress)];

     

[cell addGestureRecognizer:longPressGesture];

但是

  

- (void)handleLongPress

几乎从未被召唤过。即使它成功,在几次成功的时间后,再次发生错误。

再一次:我不需要以任何方式处理长手势,我只是希望它不会导致我的应用程序崩溃。关键是我没有什么特别的。我创建了一个类

  

@interface NewsViewController:UITableViewController   < UISplitViewControllerDelegate,UITableViewDataSource,   的UITableViewDelegate>

现在我正在尝试向单元格添加自定义子视图。一切都很好,直到我注意到这个小问题。

当我评论该行

时,它会消失
  

[cell addSubview:myCustomCell.view];

但这不是我想要的。 顺便说一下,我的桌子不应该是可编辑的,所以我也有

  
      
  • (BOOL)tableView:(UITableView *)tableView canEditRowAtIndexPath:(NSIndexPath *)indexPath {   返回NO; }
  •   

当我允许编辑时,它什么都不改变。长按 - >崩溃。同样的消息。

我的自定义单元格的属性可能有问题,但我不知道到底是什么。 还有一个事实:我的表是基于Master-Detail的app中的详细视图。

感谢您的任何建议和关注!

0 个答案:

没有答案