Как сделать вертикальный вид прокрутки на iOS?

может кто-нибудь , пожалуйста, направьте меня к учебнику, о том, как реализовать вертикальный вид прокрутки на моем приложении iOS?

Я не могу поверить, что последние 2 дня , я не могу найти ни одного рабочего примера на вертикальной прокруткой. Все учебники о горизонтальной прокрутке, масштабировании и т. д.

то, что я ищу будет что-то вроде этого учебника http://www.edumobile.org/iphone/iphone-programming-tutorials/scrollview-example-in-iphone-2/, в котором показано, как сделать uiscrollView и добавить к нему объекты из построителя, а не программно. Единственным недостатком, который я обнаружил, было то, что при попытке добавить карту вниз в области прокрутки карта будет отображаться вверх, а не в том положении, в котором я ее разместил. Может быть, есть идеи и по этому поводу?

что-нибудь на уме?

4 ответов


Итак, вы хотите создать вид прокрутки в xib.

  1. добавить вид прокрутки в файл nib
  2. установите его размер на все, что вы хотите

    enter image description here

  3. добавить элементы управления (кнопки,надписи..)

    enter image description here

  4. добавить его в качестве подвида основного вида

    enter image description here

  5. наконец, создайте свойство прокрутки и в viewDidLoad установить размер содержимого вида прокрутки

     self.scrollView.contentSize =CGSizeMake(320, 700);
    

Это просто, так же как и горизонтальной прокрутки. Добавьте scrollview в иерархию представлений,

UIScrollView *scrollView = [[UIScrollView alloc] initWithFrame:self.view.bounds];
[self.view addSubview:scrollView];

теперь, чтобы сделать scroll view прокручиваемым, установите его размер содержимого scrollview больше, чем его граница.

[scrollView setContentSize:CGSizeMake(scrollView.bounds.size.width, scrollView.bounds.size.height*3)];

теперь он может прокручивать три раза высоту scrollView.


Я боролся с этой простой проблемой в течение целого дня. Скорее всего, есть преимущества более сложного подхода, но снятие флажка autolayout решило мою проблему.

для быстрого решения, я считаю, что это лучший подход и сэкономит вам огромную головную боль.


просто измените размер содержимого вашего scrollview.Предположим, вы создаете UIScrollView со следующим фреймом

scl=[[UIScrollView  alloc]initWithFrame:CGRectMake(0, 0, 620, 172)];

теперь вызовите свойство размера содержимого вашего вида прокрутки, как показано ниже .

[scl setContentSize:CGSizeMake(700, 172)];

теперь добавьте вид прокрутки на контроллер вида / вида и т. д. и проверьте его .