Я не понял, о чём ваша беда с разными цветными фонами. Непрозрачные фоны на ваших видах, особенно анимированные, заставляют приложение работать быстрее. Теперь о переходах, прежде чем вызывать presentModalViewController, вставьте одну из следующих строк:
modelViewController.modalTransitionStyle = UIModalTransitionStyleCoverVertical;
modelViewController.modalTransitionStyle = UIModalTransitionStyleCrossDissolve;
modelViewController.modalTransitionStyle = UIModalTransitionStyleFlipHorizontal;
modelViewController.modalTransitionStyle = UIModalTransitionStylePartialCurl;
Любое из вышеперечисленного изменит стиль перехода (хотя PartialCurl приведет к появлению белого бита последнего представления, все еще присутствующего в верхнем углу; оно, кажется, недокументировано, хотя и используется приложением Карты). Возможно, вам придется поиграть с тем, на что установлен modalTransitionStyle.
Сдвиг слева или справа является частью навигационного контроллера. Изменение фона, вероятно, не то, что вы хотите при работе с контроллером навигации.
Кроме того, эта дополнительная полоса над видом модели будет отображаться независимо от того, в какую сторону вы переходите. Это раздражает, но ее можно преодолеть следующим образом:
- (void)viewDidLoad {
[super viewDidLoad];
navigationController.view.frame = CGRectMake(0, 0, 320, 460); //<--This line
}