IOS: изменение подкласса из UIView в UIScrollView в раскадровке
Я создал проект на основе раскадровки. В одном из представлений диспетчера вида требуются некоторые дополнительные элементы, которые должны быть размещены, что приводит к увеличению высоты представления, так что теперь представление должно быть прокручиваемым. Можно ли просто изменить тип класса UIView на UIScrollView в раскадровке? Будет ли он действительно конвертировать UIView верхнего уровня в UIScrollView? Просто ищем быстрый и простой способ сделать это без особых изменений.
Спасибо
Ответы
Ответ 1
Вы должны изменить тип UIView на UIScrollView (инспектор удостоверений личности), а в методе "viewDidLoad" контроллера назначить представление contentSize, отведя представление к UIScrollView:
[(UIScrollView *)self.view setContentSize:CGSizeMake(320, 700)];
Ответ 2
На самом деле гораздо лучший способ сделать это.
- Переключить
UIView
в StoryBoard и вырезать в буфер обмена что-нибудь внутри него.
- Удалите
UIView
.
- Вставьте объект
UIScrollView
в свой StoryBoard.
- Вставить из вашего буфера обмена в этот новый объект.
Этот метод сохранит все параметры делегата и IBOutlet, которые вы настроили для вещей внутри представления.
Ответ 3
Более простой способ - просто использовать представление прокрутки и установить, чтобы размер содержимого был того же размера, что и рамка, - поэтому прокручиваемая область отсутствует. например,
scrollview.contentsize = CGSizeMake(320,480);
тогда, когда вам нужно увеличить свой вид, просто обновите его по мере необходимости. Вам нужно будет убедиться, что отскок выключен, иначе вы все равно сможете перетащить scrollView.