Палец вверх 3
Перевод
Перевод

iPhone: захват точки касания в UITableViewController

Я хочу захватить положение х точки касания в UITableViewController . Наиболее простым решением, описанным в Интернете, является UITapGestureRecognizer : введите описание ссылки здесь

Но в этом случае didSelectRowAtIndexPath останавливаются.

Как использовать оба события или как получить (NSIndexPath *) параметр indexPath внутри singleTapGestureCaptured ?

С уважением

[править] Я не могу ответить на мой вопрос. Решение:

NSIndexPath * indexPath = [self.tableView indexPathForRowAtPoint: touchPoint]

iphone uitableview events location
задан theWalker 21 янв. 2012 г., 21:38:38
источник

2 ответа

Палец вверх 2
Перевод
Перевод

Я сомневаюсь, что ОП все еще ждет ответа, но в интересах будущих искателей:

Вы можете захватить событие касания внутри ячейки, действовать, затем либо отменить его, либо передать по цепочке:

@interface MyCell : UITableViewCell
// ...
@end

@implementation MyCell
// ...

- (void) touchesBegan: (NSSet*) touches withEvent: (UIEvent*) event
{
    UITouch* touch = [[event allTouches] anyObject];
    CGPoint someLocation = [touch locationInView: someView];
    CGPoint otherLocation = [touch locationInView: otherView];
    if ([someView pointInside: someLocation: withEvent: event])
    {
        // The touch was inside someView. Do some stuff, 
        // but don't invoke tableView:didSelectRowAtIndexPath: on the delegate.
    }
    else if ([otherView pointInside: otherLocation: withEvent: event])
    {
        // The touch was inside otherView. Do other stuff.

        // Send the touch on for processing, and tableView:didSelectRowAtIndexPath: handling.
        [super touchesBegan: touches withEvent: event];
    }
    else
    {
        // Send the touch on for processing, and tableView:didSelectRowAtIndexPath: handling.
        [super touchesBegan: touches withEvent: event];
    }
}
@end
ответ дан kwiqsilver 16 янв. 2014 г., 1:22:20
источник
Палец вверх 0
Перевод
Перевод

Вы не можете добавить распознаватель жестов, не испортив обработку табличных представлений сенсорных событий.

Вы не говорите точно, чего пытаетесь достичь, поэтому невозможно рекомендовать альтернативу. Все, что связано с захватом событий касания, будет сложным: цепочка респондента сложна.

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

ответ дан smparkes 21 янв. 2012 г., 21:56:22
источник