Форум программистов, компьютерный форум, киберфорум
Наши страницы
Программирование iOS/iPhone
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.75/4: Рейтинг темы: голосов - 4, средняя оценка - 4.75
Sollare
4 / 4 / 1
Регистрация: 21.03.2010
Сообщений: 33
#1

Оптимизация UIPageViewController

29.11.2013, 20:07. Просмотров 651. Ответов 1
Метки нет (Все метки)

Добрый день, не так давно начал заниматься разработкой под iOS и столкнулся со следующей проблемой.

Что имеется - UIPageViewController, с бесконечной прокруткой (используются 4 заранее инстанированных вьюхи). На каждой вьхе - UICollectionView, с кастомной ячейкой (в ней 3 лейбла).


КАК СОЗДАЮ СТРАНИЧКИ
Во viewDidLoad PageViewController в цикле делаю 4 вьюконтроллера (instantiateViewControllerWithIdentifier), затем загоняю их в массив, и в viewControllerAfterViewController / viewControllerBeforeViewController беру по нужному индексу.

Тестирую на 4s и в чем проблема - заметна долга подгрузка в момент вызова viewControllerAfterViewController и viewControllerBeforeViewController. Вижу как страничка скроллится, и за 1 пиксель до того, как она встанет на позицию в центре экрана, происходит подлаг, вызывается метод, и затем все может опять плавно крутиться влево и вправо.

Уже по разному пытался оптимизировать - например делал, чтобы CollectionView заполнялся если пользователь находится на конкретной странице 0.2 секунды.
Если меньше - в гриде 0 секций, соответственно ничего нет. Через 0.2 - выставляю нужное количество секций, релоадДата и все заполняется. После ухода со страницы (во viewDidDisappear - опять делал 0 секций). По идее после того как коллекшн выгрузился, я должен листать и не замечать подлагов - на новых страничках то грид пустой (а я полагал, что он дает основную нагрузку).

Работало как - первый раз, после того как загрузил все листается быстро. Но прохожу, например, по своим 4 страничкам, начинаю опять быстро листать - и видно, что листает уже существенно медленнее.

Предполагаю, что это из за того, что страничка выгружается из памяти, а затем снова загружается, что и вызывает подлаг... Нельзя как то ее там задержать?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
29.11.2013, 20:07
Ответы с готовыми решениями:

Ускорение и оптимизация работы с сервером
Добрый день. Опишу проблему, в приложении есть маршруты, хранятся на сервере...

UIPageViewController + скроллинг вьюконтроллера
У меня имеется UIPageViewController, который объявляется вот так mainPVC = ...

Оптимизация создания UIImageView
Программа под iPhone/iPad, есть документ на котором картинки, картинки лежат в...

Оптимизация пк
Услышал от знакомых такую инфу, мол типо можно докупить второй жесткий диск и...

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

1
Pro2005
44 / 44 / 3
Регистрация: 27.05.2013
Сообщений: 163
03.12.2013, 19:01 #2
Хм если я правильно понял... Попробуйте исп UIPageViewControllerDelegate а именно
Objective-C
1
– pageViewController:didFinishAnimating:previousViewControllers:transitionCompleted:
т.е когда вьюшка станет на место начинать грузить все что в ней находится....
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
03.12.2013, 19:01

Оптимизация.
Всем привет. Уже очень давно горю идей сделать небольшой светодиодный дисплей...

Оптимизация БД
Добрый день. Есть необходимость в оптимизации имеющейся схемы БД для учёта...

Оптимизация
Доброго времени суток! Чуть ли не первая попытка что-то написать (о работе с...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru