базовый подкласс iphone uiviewcontroller

#iphone #ios

#iPhone #iOS

Вопрос:

Я программист на g для OS X, просто пытаюсь научиться рисовать практически все на экране.

Я прочитал два похожих руководства, в обоих из которых упоминается создание нового файла, идентификация UIViewController как подкласса, открытие файла nib и изменение имени пользовательского класса с UIViewController на имя нового класса, который я только что создал, который происходит от UIViewController (в данном случае «Draw2D»).

Когда я открываю файл .xib и пытаюсь изменить свойство пользовательского класса, в раскрывающемся меню не отображается созданный мной пользовательский класс. Когда я вручную ввожу его и нажимаю enter (или фокусируюсь), XCode подает мне звуковой сигнал (ах… раздражает).

В любом случае, код ручного рисования, который я ввел, кажется, компилируется просто отлично, но когда я снова открываю файл .xib, мое пользовательское имя класса исчезло.

Я заметил кое-что подозрительное: что бы я ни делал, добавленные мной файлы Draw2D всегда оказываются в папке «Вспомогательные файлы», а не на том же уровне, что и все мои другие файлы управления версиями. Я попытался вручную переместить их на уровень выше (и даже на корневой уровень моего проекта). Это не имеет значения.

Я уверен, что это что-то глупое с моей стороны, но я не знаю, что.

Комментарии:

1. Основываясь на комментарии Эрика, я думаю, что эти 2 руководства устарели: ralfebert.de/tutorials/iosdev/viewcontroller и techotopia.com/index.php /…

2. Статья techtopia оказалась довольно актуальной. Я подозреваю, что и ralfebert тоже.

Ответ №1:

Когда вы создаете новый файл в качестве подкласса UIViewController и включаете файл nib, для него уже должно быть установлено имя вашего пользовательского контроллера. Когда вы выбираете перо, убедитесь, что в вашем желтом 3D-поле в центре экрана выбрано (владелец файлов). Посмотрите на выпадающий список свойств вашего пользовательского класса, и он должен показать вам созданный вами пользовательский класс.

Комментарии:

1. Он устанавливается в пользовательский класс, когда я нажимаю на золотой куб, но когда я нажимаю на белое поле с надписью «просмотреть» виджет в IB, имя меняется с «Draw2D» на «UIView», и я не могу изменить имя на Draw2D. Я ввел NSLog в свой метод viewDidLoad, и он, похоже, не отображается в окне вывода. Поэтому я не думаю, что мой пользовательский класс загружается.

Ответ №2:

Оказывается, я редактировал неправильный файл .xib. Полностью моя вина и что-то глупое! Интересно, почему так много .xib создается для приложения на основе UIView, где программист часто рисует всю графику самостоятельно.