Как автоматически генерировать заглушки для протоколов в XCode 4.2?
Может ли Xcode 4.2 автоматически сгенерировать мне заглушки для протоколов, определенных в заголовочном файле?
В этом уроке (http://kurrytran.blogspot.com/2011/10/ios-5-storyboard-and.html) в примечании пункта 4 автор говорит, что Xcode теперь будет автоматически генерировать методы, которые мне нужны, В противном случае я сделал что-то неправильно...
Ответы
Ответ 1
Из вашего вопроса я не могу точно понять, что вам нужно.
Если вам нужен шаблонный код, например, реализация -(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
, которая появляется при подклассе UITableViewController
, тогда вы должны создать свои собственные шаблоны как предлагает Grouchal. Также проверьте аналогичный вопрос, который я задал здесь.
Я думаю, что учебник, на который вы ссылаетесь, ссылается на смысл кода, например:
- В файле заголовка добавьте протокол, например
<UITextFieldDelegate>
:
@interface FirstViewController : UIViewController <UITextFieldDelegate>
- Сохранить, а затем в вашем .m файле вы можете увидеть новые методы, которые вы можете реализовать, просто набрав тире "-", а затем нажав "Escape" на клавиатуре. Это поможет, если вы наберете первые буквы, например "-tex", а затем "Escape" отобразит методы UITextFieldDelegate.
Попробуйте сделать то же самое с UITableViewDelegate
и UITableViewDataSource
, вы увидите, что вы получите аналогичный результат, как у step 4 вашего учебника (обратите внимание, что на скриншоте пользователь уже набрал "-tab", чтобы получить список методов).
Ответ 2
Откажитесь от Accessorizer, если я не ошибаюсь, он может делать то, что вы хотите.
Ответ 3
Во-первых, вы можете изучить шаблоны для достижения своих целей:
http://blog.highorderbit.com/2009/03/15/customizing-xcode-cocoa-touch-file-templates/
В урок, который у вас есть ссылки, также упоминается в пункте 4:
Также обратите внимание: если метод не автогенерирует, вы, вероятно, что-то не так. Главное, что я знаю, что я делаю что-то неправильно, или программа выйдет из строя.
Это может означать, что вы не выполнили предыдущие шаги 100%
Ответ 4
Если вы создаете новый класс с помощью мастера Xcode (например, File- > New- > File или cmd-N и выберите Objective-C class), то, если вы выберете соответствующий встроенный суперкласс из раздела "Подкласс Of" выпадающий список, вы получите реализацию шаблона с реализованными незавершенными заглушками и закомментированными версиями других методов, на которые вы можете основывать свой код. Я успешно использовал это для подклассов UITableViewController. Не совсем в лиге затмения Eclipse, но лучше, чем ничего.