Отлично, большое спасибо, Дэн.

я есть UIPickerView в нижнем колонтитуле таблицы (из которого я планирую выдавать запросы в стиле «нумерации страниц» для таблицы - средство выбора выведет список страниц, доступных для НАБОРА БОЛЬШИХ данных, по которому я перемещаюсь, и позволит пользователю перейти прямо на любую «страницу» данных).

Мой сборщик получает краны; если я нажму на ряд сборщика, который не выбран, он катится в центральное пространство сборщика. Но если я тяну палец на сборщик, я прокручиваю ТАБЛИЦУ, а не содержимое сборщика.

Я попытался установить подкласс UIView в моем tableFooterView, чтобы увидеть, могу ли я поймать касания, и могу ли я ... но не касания в средстве выбора. Прикосновения вокруг сборщика фактически запускают, что подкласс UIView's-touchesBegan, Но не те, что на самом сборщике.

Ответы на вопрос(1)

Решение Вопроса

Я превратил свою таблицу в подкласс UITableView (называемый PickerSensitiveUITableView).

Я реализовал этот метод:

- (UIView*)hitTest:(CGPoint)point withEvent:(UIEvent *)event
{
    UIView* result = [super hitTest:point withEvent:event];

    if ([result.superview isKindOfClass:[UIPickerView class]])
    {
          self.scrollEnabled = NO;
    }
    else 
    {
          self.scrollEnabled = YES;    
    }
    return result;
}

Так что теперь, когда касание происходит внутри границ средства выбора (фактически, ЛЮБОГО средства выбора в таблице!), Оно отключает прокручиваемость UITableView.

Мне кажется, что более общим решением было бы сделать это как категорию в UIScrollView. Проблема не столько в таблицах, сколько в UIScrollView, который UITableView является подклассом ...

 Jukurrpa15 нояб. 2012 г., 14:18
Отличное решение, умное и простое. Позволил мне включить смахивание для удаления в виде таблицы, расположенной в горизонтальном виде прокрутки. Большое спасибо.
 Pacu11 февр. 2011 г., 08:20
с категориями дело в том, что переопределение метода не гарантируется.
 DrMickeyLauer28 мая 2013 г., 17:48
Отлично, большое спасибо, Дэн.

Ваш ответ на вопрос