В этом фрагменте кода вы используете только один UIImageView:
UIImageView *temp = pic;
Итак, эта строка ничего не делает:
pic.alpha = 0;
Чтобы добавить одно изображение и другое изображение, вам нужно два экземпляра UIImageView.
Чтобы ускорить процесс, вы можете загрузить следующее изображение раньше времени. Установите делегата для анимации и, когда он завершится, загрузите изображение, которое будет отображаться при следующем вызове nextPic
.
Edit:
Если изображения не прозрачны, попробуйте установить pic.opaque = YES;
, чтобы представление могло игнорировать базовые виды. Если это не вариант, попробуйте иметь как можно меньше видов между исчезающим видом и полноэкранным непрозрачным видом. На каждом этапе постепенного изменения вид должен быть объединен с каждым нижележащим видом, пока не будет найден непрозрачный вид.
Если у вас есть много прозрачных видов под затуханием, рассмотрите возможность создания из них временного композита, эквивалентного выравнивания слоев в фотошопе, и размещения компоновки в виде изображения в полноэкранном непрозрачном виде перед началом затухания. Это может задержать начало затухания, но само затухание должно быть более плавным.