2010-09-12 3 views
1

Итак, Interface Builder делает все, чтобы сэкономить время, но что, если я хочу обойтись без него? В C# весь созданный код ясен и понятен, в построителе интерфейса это скрыто, поэтому я хотел бы, по крайней мере, на этапе обучения делать что-то с нуля: любой пример кода для этого?Возможно ли построить вид iphone без использования Interface Builder?

Кажется, Apple, делает вещи очень трудно, так как вы не можете легко использовать альтернативу Xcode :)

http://cocoawithlove.com/2009/02/interprocess-communication-snooping.html

+1

«В C# все генерируемые коды понятны и понятны», я сомневаюсь, что – PurplePilot

+0

Конечно, даже я могу это понять, и я даже не являюсь гуру :) – user310291

ответ

3

Да, вы можете построить представление без IB. Просто выделить и инициализировать вид или элемент управления и установить его свойства, например .:

UITextField *tf= [[UITextField alloc] initWithFrame: CGRectMake(24.5, 65, 270, 30)]; 
tf.delegate = self; 
tf.textAlignment = UITextAlignmentCenter; 
tf.autocorrectionType = UITextAutocorrectionTypeNo; 
tf.autocapitalizationType = UITextAutocapitalizationTypeNone; 
[self.view addSubview: tf]; 

Но IB не скрыть любой сгенерированный код от вас, потому что он не создает какого-либо кода. Вместо этого он создает экземпляры объектов и сериализует их в файл XIB или NIB.

+0

Ну, я новичок в iphone sdk, так что спасибо, я не знал он не генерирует никакого кода, но для меня это хуже, поскольку я ничего не вижу :) – user310291

+0

спасибо за фрагмент кода, что я и хотел. – user310291

2

Интерфейс Builder не работает так же, как Visual Studio. Он не генерирует код, вместо этого генерирует «сырые» экземпляры объектов. В этом смысле код невозможен, потому что - никакого кода не генерируется.

Один вариант nib2objc для преобразования ваших интерфейсов в код, хотя я не уверен, насколько это было бы читаемо. Как отмечено выше, это не код, который будет выполнен вашим iPhone.

+0

Фантастический, который поможет мне лучше понять файл nib! – user310291

1

Это blog post показывает, как начать работу с проектом iPhone nibless.

И вы можете посмотреть на это SO question, чтобы узнать о создании программ (например, UIButton в этом случае).

+0

Несчастливо сообщение в блоге настолько короткое :). Спасибо за ссылки. – user310291

1

Интерфейс построитель не генерирует код для создания объекта пользовательского интерфейса. Он создает сжатый объект данных xib, который среда выполнения iOS «распаковывает» (выполняет некоторую утилизацию) в ваш предварительно построенный объект.

Парадигма заключается в том, чтобы на самом деле думать о вас как о объектах как о себе, а не о результатах выполнения кода. например что бы вы получили, если бы вы могли «Сделать это так». без написания кода.

Смежные вопросы