Я нашел свой ответ здесь:
http://forums.macrumors.com/showthread.php?p=6120638&highlight=UIPickerView#post6120638
Когда он запрашивает заголовок строки, укажите:
Код:
return [rows objectAtIndex:(row % [rows count])];
Когда он говорит, что пользователь didSelectRow: inComponent:, используйте что-то вроде этого:
Код:
//we want the selection to always be in the SECOND set (so that it looks like it has stuff before and after)
if (row < [rows count] || row >= (2 * [rows count]) ) {
row = row % [rows count];
row += [rows count];
[pickerView selectRow:row inComponent:component animated:NO];
}
Похоже, что UIPickerView не поддерживает внутреннее обтекание, но вы можете обмануть его, вставив дополнительные наборы данных для отображения и, когда сборщик остановится, центрируя компонент в середине набора данных.