Вопрос о двойном сборщике - PullRequest
0 голосов
/ 07 февраля 2011

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

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

1 Ответ

2 голосов
/ 07 февраля 2011

Вам нужно установить UIPickerViewDelegate, установить его в качестве делегата вашего средства выбора и реализовать – pickerView:didSelectRow:inComponent:, чтобы изменить свою метку так, как вы хотите.Ссылка на протокол UIPickerViewDelegate: здесь .Возможно, я бы просто установил viewController для содержащего представления в качестве делегата, но это зависит от структуры вашей программы.

EDIT - пример кода добавлен:

Вы объявляете класс как реализующийпротокол делегирования с нотацией <>, как показано ниже:

@interface MyViewController : UIViewController<UIPickerViewDelegate>

Затем вы можете установить делегат вашего экземпляра представления средства выбора следующим образом:

myPicker.delegate = myViewControllerInstance;

Или, если средство выбора являетсяivar класса viewcontroller:

myPicker.delegate = self;

Тогда внутри реализации вашего класса MyViewController вы можете при желании реализовать методы протокола UIPickerViewDelegate, и соответствующие сообщения будут отправлены в нужное время.например, -pickerView:didSelectRow:inComponent: (если реализовано в вашем делегате) будет вызываться всякий раз, когда средство выбора выбирает значение, и ему передается выбранная строка и компонент, в котором была выбрана строка.

...