xCode 4.2, iPhone 3.1.3, UITapGestureRecognizer, setNumberOfTapsRequired, нераспознанный селектор

Я пытаюсь запустить xCode 4.2 с помощью iPhone 3.1.3. Мой быстрый вопрос:

  • Есть ли обходной путь, чтобы эта функция работала?

    UITapGestureRecognizer *gestureSingleTap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(didSingleTap:)];
    [gestureSingleTap setNumberOfTapsRequired:1];
    [taskScrollView addGestureRecognizer:gestureSingleTap];
    [gestureSingleTap release];    
    
  • Ошибка, которую я получаю во время выполнения, такова:

    -[UITapGestureRecognizer setNumberOfTapsRequired:]: unrecognized selector sent to instance 0x143170
    

Мои вопросы:

  • Есть ли обходной путь для этого на iOS3.1.3, который прост и не требует большого количества переписывания кода?
  • Можно ли каким-то образом "расширить" функцию, чтобы перенаправить на эквивалент 3.1.3 для обратной совместимости?

Большое спасибо!

Добавлено примечание: выяснилось, что некоторые функции считаются "частными" и не полностью функциональными до их фактического выпуска. Это, наверное, моя основная проблема. Если у кого-то есть библиотека обратной совместимости, мне было бы интересно ее использовать.

1 ответ

Решение

Посмотрите на метод didSingleTap:

У него действительно точка с запятой после него и аргумент? (также правильно ли оно написано, и действительно ли ваш класс определяет этот метод?)

Если didSingleTap не принимает аргументы, он должен быть @selector(didSingleTap) (без двоеточия после didSingleTap).

Обновление: предыдущий ответ был неверным. Свойства определяют методы set/get.

Другие вопросы по тегам