2013-05-12 3 views
1

Я пытаюсь написать приложение для iPad с основной целью заполнения формы. У меня есть 5 независимых форм, которые я разработал в Interface Builder с каждой формой, имеющей более 50 UILabels и UITextFields, а также несколько сегментированных элементов управления в UIScrollView (да, это действительно очень длинная форма). Эти формы должны быть локально сохранены в самом приложении, которое позднее может быть отправлено по электронной почте. После разработки форм я понял, что создание IBOutlets для такого большого количества различных элементов управления будет утомительным и может также мешать производительности приложения. Меня также беспокоит сложность, которую он будет создавать при управлении этими точками.Как управлять очень большим количеством IBOutlets в приложении iOS

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

Любые предложения приветствуются. Большое спасибо.

+0

есть что-то вроде этого, @property (слабый, неатомный) IBOutletCollection (UITextField) * myTFCollection; –

+1

Вы можете просто назначить другой тег для каждого текстового поля, а затем сохранить в нем значение, когда textFielddidEndEditing: вызывается в соответствующее место на основе указанного тега. Это требует только установки своих делегатов. – lnafziger

+0

@inafziger, спасибо, я думаю, что это может сработать, позвольте мне проверить. Большое спасибо. –

ответ

0

Могут быть два типа UILabels и UITextFields.

1. Статический/Исправленный текст внутри.

2. Динамический текст.

Вы создаете выходные точки для динамических значений, которые меняются во время выполнения. Или если вы реализуете какую-то вещь из кодов.

Если вы думаете, 50 точек трудно работать, вы можете создать 5 отдельных контроллеров классов для каждого forms, в результате чего в 10 точках для обработки в одном классе контроллера.

+0

50 - это не точная величина, это может быть даже около 100. В любом случае, я попробую ваше предлагаемое решение. –

+0

В приложениях osx одно окно может содержать десятки видов. каждый из которых имеет 100 точек розетки. Таким образом, во всем проекте 10windows * 10views * 100 выходов == 10000 элементов могут быть там. Поэтому просто переосмыслите дизайн и используйте ** Divide and conquer rule ** –

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