Я собираюсь реализовать вид, аналогичный исходному приложению для фотографий в iOS.
Я создал настроенный UITableViewCell, в котором есть 4 кнопки UIB. И он обновляет изображение кнопки при изменении массива изображения ячейки.
Я усердно работал, чтобы получить действительно удовлетворяющее представление. Однако я обнаружил хитрую проблему с лагами.
Когда я пользуюсь своим приложением в обычном режиме, прокрутка очень плавная, без значительной задержки. Но если я оставлю приложение (симулятор) работающим в режиме «сетки в виде миниатюр», и переключусь на другие приложения в Mac OS. Через некоторое время (возможно, около 1 минуты), когда я переключаюсь обратно в симулятор, представление прокрутки застревает. Это трудно прокрутить. Если я нажимаю на что-то, переключаясь на другой вид, а затем переключаюсь назад, все снова становится гладким. Так сложно.
Я также попробовал TTRemoteExamples
, который использует three20
для реализации вида сетки. Он также зависает после переключения между различными приложениями в Mac OS (не в iOS).
Затем я попытался заполнить пользовательскую ячейку не UIButton, а 4 изображениями. Это не застряло. Так может быть причина кроется в конфликте между UITableViewCell и UIButton?
Я не знаю, происходит ли это только на симуляторе или есть потенциальная проблема с производительностью при доставке на устройство (у меня нет устройства для тестирования).
Приложение Apple для фотографий никогда не будет таким.
Итак, я собираюсь реализовать его из UIScrollView самостоятельно, чтобы увидеть, не вызвана ли проблема механизмом UITableView. Я все еще хочу знать причину задержки, если кто-то пришел к ней и решил ее.
Извините за мой плохой английский, надеюсь, вы меня поймете.