Какие приемы можно сделать, чтобы ваше приложение на iPad стало быстрым? - PullRequest
2 голосов
/ 25 января 2011

Я хочу, чтобы приложения, которые я создаю, работали молниеносно.

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

Ответы [ 6 ]

5 голосов
/ 25 января 2011

Делайте как можно меньше в главном потоке.Используйте NSOperations / GCD и другие фоновые методы, чтобы загрузить все из основного потока.И что все остальные говорили:)

5 голосов
/ 25 января 2011

Ваш вопрос носит общий характер, но ответ «Управление памятью».

Все ответы, представленные на данный момент, относятся к этой категории.Независимо от того, воспроизводите ли вы мультимедиа (видео, аудио, фото) или показывает данные (используя UITableView), вы хотите оптимизировать использование памяти.

Хитрость заключается в том, чтобы загружать только то, что вам нужно, и ничего более в любой момент времени.

Также GCD.

2 голосов
/ 25 января 2011

Профилируйте все методы и функции, которые выполняются в главном потоке пользовательского интерфейса, и убедитесь, что всем им (включая подпрограммы и делегаты) требуется не более 16 миллисекунд для полного выхода в цикл выполнения. Убедитесь, что все обновления чертежей пользовательского интерфейса, вместе с этими методами пользовательского интерфейса, также занимают не более 16 мс. Тогда ваш пользовательский интерфейс может работать со скоростью 60 кадров в секунду (это максимально возможное значение на современных устройствах) и вряд ли пропустит какие-либо входные события.

Все остальное, все загрузки изображений, все сетевые передачи данных, вся обработка и т. Д., Запуск асинхронно и / или в фоновом потоке.

(И то, что все остальные тоже говорили ...:)

2 голосов
/ 25 января 2011

Если вы используете UITableView, убедитесь, что вы заранее подготовили все свои данные и просто извлекли их из соответствующего экземпляра класса модели в вашем tableView: cellForRowAtIndexPath: метод делегата - в противном случае это приведет к уничтожению отклика.

Кроме того, поступите правильно и убедитесь, что вы используете метод dequeueReusableCellWithIdentifier в предоставленном UITableView.

2 голосов
/ 25 января 2011

Не используйте большие изображения / видео / аудио файлы или инициализируйте много объектов, которые не используются активно, и выпускайте их, когда это возможно.

1 голос
/ 25 января 2011

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

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