Навигация по методу Xcode
В Xcode 4 я могу нажать Ctrl-6, чтобы получить список всех методов в текущем файле.
Проблема в том, что если у меня есть частные методы, объявленные в верхней части моего файла реализации, скажите:
@interface Foo ()
-(void)tap:(id)sender;
@end
@implementation Foo
...
-(void)tap:(id)sender
{
...
}
а затем наберите "tap", пока список методов будет виден, просто приведет меня к объявлению, так как он будет первым в файле, когда я действительно хочу, это реализация.
Есть ли способ исключить эти объявления из списка методов или мне нужно использовать отдельные заголовки Foo.h
и Foo+Private.h
?
Спасибо!
Ответы
Ответ 1
Я не думаю, что есть способ исключить объявления метода из всплывающего окна Document Items.
Если вы привыкли использовать сворачивание кода, однако, вы не можете так много полагаться на это всплывающее окно, чтобы перейти к исходному коду. Существуют команды для складывания обоих методов и блоков комментариев, и вы можете сбросить все методы с помощью быстрого быстрого вызова (стрелка командной строки-shift-left для сброса, стрелка вправо для разворачивания по умолчанию, хотя вы можете, конечно, настроить ключи), См. Подменю "Редактор- > Сводка кода" для полного списка связанных команд.
Когда вы складываете все комментарии и методы в файле .m, почти все, что у вас осталось, это список методов, который позволяет легко находить то, что вы ищете. Затем вы можете развернуть этот метод или все методы с помощью другого нажатия клавиши. Немного странно видеть, что весь ваш код исчезает, когда вы впервые начинаете использовать фальцовку, но это очень удобная функция.
Ответ 2
Вам не нужно объявлять частные методы, и вы больше не будете получать предупреждение по умолчанию. Таким образом, один из вариантов заключается не в том, чтобы вообще объявить прототип.
В противном случае, как упомянутый ctrl-6 куртизарь является хорошим ярлыком. Я использую это все время (без мыши):
- Нажмите ctrl-6
- Введите первые несколько букв имени метода (или содержащее его слово, и вам даже не нужно указывать его на месте, фильтр поиска очень хорош!)
- Нажмите до тех пор, пока не будет выбран метод.
- Нажмите enter
Альтернативно откройте помощника с cmd-alt enter (чтобы закрыть команду cmd-enter, см. здесь дополнительные ссылки). Вы можете заставить помощника редактора посмотреть один и тот же файл, поэтому он имеет одну часть сверху и одну внизу.
Ответ 3
Обычно лучше добавлять именованную категорию для частных методов:
#import "Foo.h"
@interface Foo( Private )
- ( void )tap: ( id )sender;
@end
@implementation Foo( Private )
- ( void )tap: ( id )sender
{}
@end
@implementation Foo
...
@end
Затем вы увидите все. Он может не отвечать на ваш вопрос, но, по крайней мере, вы увидите свой метод.
Одно дело также организовать ваши методы с помощью mark
pragmas:
#pragma mark - Private methods
Может помочь вам перейти через диалог завершения...
Надеюсь, это поможет...