Определение метода не найдено… автоматическая заглушка с Xcode?

StackOverflow https://stackoverflow.com/questions/2370209

Вопрос

Я не хочу сдаваться, прежде чем спросить, потому что это базовая функциональность в любой Java / .Net IDE.Компилятор сообщает мне:

родовое слово

но щелчок, щелчок правой кнопкой мыши, молитва и поиск в Google не позволили мне автоматически создать заглушку метода из этого. Может ли Xcode создать для меня заглушку метода и перенести меня туда?

Если нет, то почему это может быть (помимо слов «настоящие программисты любят печатать»)?

Изменить: я думал, что option-escape в основном решил эту проблему для меня, но это не так.Кажется, он не знает обо всех (каких-либо?) Интерфейсах, реализуемых моим классом.

Это было полезно?

Решение 4

То, о чем OP (я) говорит, находится в Java, где интерфейс неявный.Однако случай, который повторяется в Xcode, - это тот случай, когда НИКАКОГО метода еще не определено ни в одном интерфейсе.

AppCode обрабатывает этот случай, Xcode - нет (если кто-то не ответит на этот вопрос, но он был здесь некоторое время):

Всплывающее окно кода приложения, показывающее создание метода

Позже: люди ответили на вопрос, но Xcode по-прежнему этого не делает.

Другие советы

Это может быть возможность отправить запрос функции в Apple.Обычно я создаю свой файл @interface, а затем копирую / вставляю @interface в @implementation, сводя набор текста к абсолютному минимуму.

Однако было бы неплохо иметь возможность щелкнуть предупреждение и позволить Xcode просто создать метод в нижней части @implementation.

ПРИМЕЧАНИЕ: можно оставить точку с запятой после @implementation

родовое слово

Я не против такого поведения.Во-первых, реализация не обязательно существует, поскольку она может быть динамической.Я также классифицирую свой код с помощью #pragma mark - MyCategory и хочу, чтобы реализации были в определенных местах исходного файла.

Однако я согласен - я не хочу вводить саму заглушку.

Это можно сделать по отдельности.
Перейдите в свой файл реализации и начните вводить - prefix и нажмите ESC, и вы должны увидеть действительные завершения, соответствующие префиксу.Вы должны начать с ввода - или +, чтобы это сработало, например, методы экземпляра и методы класса соответственно.

Иногда вы не знаете, что вам нужно реализовать!Откройте навигатор проблем и щелкните прямоугольник раскрытия.Должна быть строка с надписью Метод, объявленный здесь .Щелкните по нему, чтобы увидеть метод, который не реализован.

То, что вы ищете, не существует.Я просто использую автозаполнение (у меня это обычно работает) или копирование / вставку.

Почему вы думаете, что в Xcode есть функция только потому, что она есть в eclipse?Eclipse ~ 10 лет, а Xcode ~ 23 года.Любые скопированные объекты, скорее всего, будут в другом направлении.

Однако это было бы отличным запросом.Возможно, открыв меню автозаполнения на пустой строке внутри кода @implementation .. @end, можно получить список еще не реализованных методов.

Но я не уверен, насколько хорошо это будет работать на практике, из-за общих категорий кодовых кодов.В меню автозаполнения могут быть буквально тысячи «еще не реализованных» методов.Но он может показать по крайней мере некоторые из наиболее вероятных.

Похоже, эта ошибка / предупреждение компиляции также может быть хорошим кандидатом для новой функции «Исправить».

Также: научитесь печатать быстрее: p

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top