Отменить действие ActionSheet MFMailComposeViewController

Я пытался решить этот весь день, я обновил свой файл mainWindow.xib до версии 4 дюйма iPhone 5, и все мои ActionSheets ведут себя нормально на 4-дюймовом симуляторе. Однако, если я отменил составление электронной почты в портретном режиме на 3,5-дюймовых устройствах, лист действий не будет полностью обнаружен (кнопка «Отмена» скрыта).

Я ценю любую помощь.

Вот скриншот проблемы в портрете:

занятая кошка

Вот код, который я использую, чтобы отобразить панель действий и встречный акт для размеров экрана 3,5 дюйма из-за того, что мой mainWindow.xib теперь представляет собой 4-дюймовую версию:

sheet = [[UIActionSheet alloc] initWithTitle:nil delegate:self cancelButtonTitle:@"Cancel" destructiveButtonTitle:nil otherButtonTitles:@"Share via iMessage/SMS", @"Share via E-Mail", @"Review App", nil]; // This code is for the iPhone 5 portrait & landscape, 3.5" landscape, and iPad if ([[UIScreen mainScreen] applicationFrame].size.height == 548 | orientation == UIInterfaceOrientationLandscapeLeft | orientation == UIInterfaceOrientationLandscapeRight | UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad) { [sheet showInView:self.parentViewController.view]; } // This code is for 3.5" portrait else { [sheet showInView:self.parentViewController.view]; [sheet setFrame:CGRectMake(0, 220, 320, 320)]; } 

Давайте будем гением компьютера.