Что является эквивалентом iPhone findViewById (int) для iPhone? - PullRequest
7 голосов
/ 27 апреля 2011

Я пришел из Android и только начал изучать разработку для iOS.Как я могу ссылаться на элементы пользовательского интерфейса, созданные в Интерфейсном Разработчике из кода?В Android это можно сделать с помощью функции findViewById().

Что является эквивалентом iOS SDK findViewById()?

Ответы [ 3 ]

6 голосов
/ 27 апреля 2011

Задайте свойство элемента управления tag , а затем извлеките элемент управления по его тегу, используя viewWithTag.

tag: целое число, которое вы можете использовать для идентификации объектов вида в вашем приложении.

Пример

UIButton *button = [UIButton buttonWithType:UIButtonTypeRoundedRect];
button.tag = 1;
[myView addSubview:button]; 

Позже, когда вам нужнополучить / получить доступ к элементу управления UIButton:

UIButton* btn = [myView viewWithTag:1];


Помните, что вы также можете установить свойство Tag в файле .xib (построитель интерфейса) в атрибутах элемента управления,

см. Справочник Apple по классу UIView Свойство тега

2 голосов
/ 27 апреля 2011

Исходя из школы Джеффа ЛеМарша, начинающего iPhone dev, вы также можете создавать переменные-члены в ваших классах, украшать их как IBOutlet и связывать элементы пользовательского интерфейса в конструкторе интерфейса с переменными.

Вот ссылка на его начальную книгу в Google Книгах, на странице 52 подробно рассматриваются пошаговые инструкции: http://books.google.com/books?id=TcP2bgESYfgC&lpg=PP1&dq=beginning%20iphone%203%20development&pg=PA52#v=onepage&q=connecting%20everything&f=false

Xcode 4 делает вещи, намного проще сделать то же самое.Просто откройте файл .xib и на панели инструментов «Редактор» в правом верхнем углу нажмите среднюю кнопку «Показать редактор Assistant».Это должно открыть связанный файл заголовка (.h) для этого .xib, и вы можете просто контролировать перетаскивание элемента пользовательского интерфейса в файл .h, и он сгенерирует код IBOutlet для вас.

0 голосов
/ 27 апреля 2011

в iOS вы можете использовать viewWithTag функцию UIView.

- (UIView *)viewWithTag:(NSInteger)tag

Используйте, как показано ниже

UIView* myView12 = [SuperViewOf_myView12 viewWithTag:12]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...