Как добиться этого в UIScrollView? - PullRequest
0 голосов
/ 30 декабря 2011

Я хочу отобразить список элементов внутри UIScrollView, здесь для некоторых элементов у меня есть изображения, а некоторые нет. Элементы с изображением должны отображаться вместе с изображением, а остальные - просто как список элементов, как мне этого добиться? Я имею в виду, как заботиться о contentSize, смещении и всем.

Любая помощь приветствуется заранее.

Ответы [ 2 ]

1 голос
/ 30 декабря 2011

Не переизобретай колесо.Используйте табличное представление.Это подкласс UIScrollView, оптимизированный для отображения списка элементов.Вы можете использовать разные ячейки для элементов с изображениями и без элементов.

0 голосов
/ 30 декабря 2011

Это действительно зависит от того, чего вы хотите достичь.Вы должны принять во внимание, что иногда лучше иметь UITableView с некоторыми пользовательскими UITableViewCell (для целей памяти).

Хорошо, поэтому давайте предположим, что вы хотите UIScrollView с вертикальнойпрокрутки.У вас будут предметы с некоторыми случайными изображениями, а другие - без изображения.Что вам нужно сделать, так это просто добавлять свои элементы один за другим внутри вашего UIScrollView.Вы можете сделать это с циклом while.Единственное, на что вы должны обратить внимание - это размеры ваших предметов.Итак, давайте предположим, что у вас есть предметы с 140 ростом.Вы можете сделать что-то вроде этого ( Я не скомпилировал этот код ):

float yReference=0.0f;  
while(MyItem *item in arrayOfItems){
   [myScroll addSubview:item.view];
   item.view.frame=CGRectMake(0.0f, yReference+20.0f, item.view.frame.size.width,   item.view.frame.size.height);
   yReference+=140.0f;
}

Хорошо, теперь у вас есть все ваши элементы, добавленные в ваш UIScrollView с интервалом 20.0f междуих.Через некоторое время вы просто устанавливаете правильный contentSize вашего UIScrollView:

myScroll.contentSize=vReference+20.0f;

(я снова добавил 20,0f, чтобы в конце было немного места)

Вы можете проверить этот учебник, если вам нужна дополнительная помощь.Хотя он добавляет предметы по горизонтали, логика та же самая.

PS: Для того, чтобы вы могли получить больше помощи, вы должны увеличить свой коэффициент принятия.:)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...