Хорошо, поэтому я учусь использовать UIScrollView в построителе интерфейса. поскольку сам scrollView не имеет содержимого, я создал другое представление, contentView, для хранения моих элементов управления и прокручиваемого содержимого. в это представление я помещаю элементы управления, метки и т. д., а затем в моем коде я устанавливаю contentSize для scrollView равным размеру этого contentView.
Мой вопрос кажется потрясающе простым и настолько очевидным, что я, должно быть, что-то упустил. когда я создал этот XIB в IB, я получил ваше стандартное пустое окно интерфейса iPhone. Я сбросил scrollView поверх него, он занял все окно. Я сбросил представление поверх этого, оно заняло всю прокрутку. Я добавил несколько элементов управления, которые до сих пор я вижу внутри прямоугольника contentView в IB.
У меня вопрос: как мне работать / добавлять элементы управления, которые находятся вне видимой части contentView в IB? РЖУ НЕ МОГУ. это кажется таким простым, но я просто не понимаю. Я могу установить высоту представления содержимого или перетащить прямоугольник на все, что мне нравится (и действительно, в этом весь смысл прокрутки), но фиксированное окно пользовательского интерфейса из IB не будет расширяться, поэтому я могу видеть "закадровую" часть ContentView, чтобы добавить дополнительные элементы управления. Это похоже на то, что он просто зафиксирован в этом размере, потому что это размер одного экрана iPhone, и он не позволяет мне сделать его больше / выше.
что я сделал не так?
-a
Ответ 1 · рейтинг 12 · Kendall Helmstetter Gelner
Вам необходимо отключить все моделируемые элементы пользовательского интерфейса (например, строку состояния), чтобы они были "неопределенными", за исключением размера, который вы выбираете как "Произвольная форма" в раскрывающемся списке, а затем вы можете установить высоту просмотра с помощью линейки. вкладка, чтобы быть тем, что вам нравится.
Например, здесь я выбрал контроллер просмотра фотографий и установил размер на правой боковой панели как "iPad Full Screen" - но я также мог изменить его на "произвольную форму", чтобы установить любую высоту, которую я хотел.
Ответ 3 · рейтинг 2 · Aubin LaBrosse
неважно. вы перетаскиваете представление содержимого вверх, чтобы некоторые элементы управления находились за пределами экрана, а затем добавляете дополнительные элементы управления / расширяете часть, которую вы только что сделали видимой, перемещая верхний элемент сверху. по сути, вы физически прокручиваете contentView в IB, перетаскивая его мышью. кажется немного нелогичным, но неважно.
Ответ 5 · рейтинг 1 · jer
Вам не нужно создавать представление для размещения внутри scrollview, если вы этого не хотите. В вашем случае это кажется бессмысленным.
Что касается второй части вашего вопроса, вы можете размещать элементы непосредственно в просмотре прокрутки (в конце концов, это вид) в качестве подвидов. Если вы хотите, чтобы они были за пределами экрана, просто установите для их кадра те конкретные координаты x, y, в которых вы хотите, чтобы он находился. Вам нужно будет убедиться, что свойство вашего scrollview contentSize достаточно велико, хотя для размещения всего вашего контента, это то, что позволяет прокручивать по горизонтали / вертикали.