Как прикрепить розетку к UISegmentedControl в UIToolbar - PullRequest
1 голос
/ 12 января 2010

У меня есть представление в приложении. Представление содержит UITableView и UIToolbar, а внутри UIToolbar у меня есть UISegmentedControl, который содержится в объекте UIBarButtonItem.

Я могу получить сегментированный элемент управления для связи с событием IBAction, и он затем воздействует на изменение значения, но я не вижу, как добавить IBOutlet к этому элементу.

Когда я пытаюсь добавить эту ссылку, единственным объектом, который, по-видимому, хочет принять выходную ссылку, является вид таблицы. Я ожидал бы, что это пойдет в розетку Владельца Файла.

Что мне здесь не хватает?

Ответы [ 2 ]

0 голосов
/ 12 января 2010

На самом деле проблема оказалась в том, что представление было назначено неправильно и использовалось недопустимый подкласс. Это мешало владельцу файла разрешить мне просматривать IBOutlets, которые уже были правильно указаны в файле .h.

Как только я исправил иерархию классов, проблема ушла.

Спасибо всем за помощь.

0 голосов
/ 12 января 2010

Ваш вопрос неясен.

Если вы пытаетесь добавить выход к сегментированному элементу управления, т. Е. К выходу, который проходит от сегментированного элемента управления к другому объекту, то вы должны создать подкласс для сегментированного элемента управления с добавленным свойством выхода. Выход - это указатель на внешний объект, поэтому класс должен выделить память для указателя и создать для него символ.

Если вы пытаетесь связать выход от Владельца файла с сегментированным элементом управления, но видите, что не видите в качестве выбора свойства выхода Владельца файла, то вы либо (1) неправильно определили выход в классе Владельцы файлов, либо ( 2) не установить владельца файла на соответствующий класс.

Для (1) в вашем классе File Owner у вас должно быть что-то похожее на это:

@property (nonatomic, retain) IBOutlet UISegmentedControl *mySegmentedControl; //best

или

@property id mySegmentedControl; //works but is sloppy unless the flexibility is required

Для (2) В конструкторе интерфейсов найдите инспектора на панели идентификации и убедитесь, что для владельца файла назначен соответствующий класс.

...