UIPickerView: получить значение строки во время вращения?

Я согласен с ответом от zacherates.

Но вы можете сделать вызов intern () в ваших нелиберальных строках.

Из примера zacherates:

// ... but they are not the same object
new String("test") == "test" ==> false 

Если вы ставите нелитеральное равенство строки, это правда

new String("test").intern() == "test" ==> true 
7
задан user183266 2 October 2009 в 18:02
поделиться

2 ответа

Возможно, попробуйте реализовать метод делегата:

- (UIView *)pickerView:(UIPickerView *)pickerView viewForRow:(NSInteger)row forComponent:(NSInteger)component reusingView:(UIView *)view

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

11
ответ дан 6 December 2019 в 23:10
поделиться

Размеры UIPickerView довольно согласованы. Вместо того, чтобы создавать подклассы, вы могли бы наложить свой собственный UIView поверх представления средства выбора, из которого вы можете отслеживать и измерять перемещения перетаскивания, прежде чем передавать эти касания в представление средства выбора.

0
ответ дан 6 December 2019 в 23:10
поделиться
Другие вопросы по тегам:

Похожие вопросы: