В случае, если у кого-то все еще есть эта проблема, проблема заключается в том, что аффинная матрица преобразования не является уникальной для масштабного коэффициента, равного нулю - нет способа узнать, как правильно «интерполировать» между исходной матрицей и нулевой матрицейТаким образом, вы получите странные эффекты, как вы описали.
Решение состоит в том, чтобы просто использовать небольшое, но ненулевое значение шкалы, например,
[UIView animateWithDuration:0.3
animations:^{ myView.transform = CGAffineTransformMakeScale(0.01, 0.01); }
completion:nil];