Это может помочь вам:
[scrollframe setContentOffset:CGPointMake(scrollframe.contentOffset.x, scrollframe.contentOffset.y-100)];
Вы можете вызвать вышеуказанный код с помощью той же функции, откуда вы вызываете pickerView.Таким образом, вам не нужно изменять высоту прокрутки.
Ваш код должен быть таким:
UIView *contentView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 320, 460)];
[contentView setBackgroundColor:[UIColor clearColor]];
self.view = contentView;
UIScrollView *horizontalScroll = [[UIScrollView alloc] initWithFrame:CGRectMake(0, 0, 320, 460)];
[horizontalScroll setBackgroundColor:[UIColor blackColor]];
[horizontalScroll setDelegate:self];
[contentView addSubview:horizontalScroll];
UIPickerView *tempPicker = [[UIPickerView alloc] initWithFrame:CGRectMake(0, 220, 320, 100)];
[tempPicker setHidden:YES];
[contentView addSubview:tempPicker];
Сделайте все три из них глобальными в файле .hи тогда вы будете лучше контролировать свое поведение.Ваше представление выбора перемещается вместе с другими элементами представления прокрутки, потому что вы могли бы добавить представление выбора как подпредставление в представлении прокрутки.