Длинные проблемы с прессой в ячейке uitableview при редактировании - PullRequest
0 голосов
/ 26 октября 2011

Пожалуйста, смотрите мой код ниже.Когда я вхожу в режим редактирования, я не могу перетаскивать ячейки вверх и вниз из-за долгого нажатия распознавателя.Если я удалю распознаватель длинных нажатий, все будет работать как надо.

Любая помощь приветствуется.

    - (void)startEditingIndex
    {
        [self.navigationController setToolbarHidden:NO animated:YES];
        [self.tableView setEditing:YES animated:YES];
    }


    // Customize the appearance of table view cells.
    - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {

        static NSString *CellIdentifier = @"Cell";

        UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
        if (cell == nil) {
            cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:CellIdentifier] autorelease];
            cell.textLabel.lineBreakMode = UILineBreakModeWordWrap;
            cell.textLabel.numberOfLines = 0;
        }

        UILongPressGestureRecognizer *longPress = [[UILongPressGestureRecognizer alloc] initWithTarget:self action:@selector(startEditingIndex)];
        [cell addGestureRecognizer:longPress];
        [longPress release];


        NSString *cellText = @"Text";

        cell.textLabel.text = [[self.indexArry objectAtIndex:[[self.indexOrder objectAtIndex:indexPath.row] intValue]] objectForKey:cellText];

        return cell;
    }

1 Ответ

3 голосов
/ 26 октября 2011

Установите ваш класс в качестве делегата longPress и реализуйте следующий метод делегата:

- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldReceiveTouch:(UITouch *)touch
{
    return ![self.tableView isEditing];
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...