iOS8 – предотвращает поворот при представлении viewController

У нас есть MainViewController с tableView, и он представляет новый modalViewController.

MainViewController ограничивается только портфолио, и modalViewController может вращаться.

Проблема в iOS8 заключается в том, что когда modalViewController вращается, метод обратного вызова вращения в iOS8 в MainViewcontroller вызывается – - (void)viewWillTransitionToSize:(CGSize)size withTransitionCoordinator:(id<UIViewControllerTransitionCoordinator>)coordinator

Таким образом, UITableView перезагружает свои данные, чего мы не хотим.

Можем ли мы предотвратить эту функцию iOS 8, а не поворачивать презентацию UIViewController?

3 Solutions collect form web for “iOS8 – предотвращает поворот при представлении viewController”

Поэтому после долгих дней поиска и расследования я наконец придумал возможное решение.

Прежде всего, я могу использовать контроллер навигации и нажимать viewController вместо его представления, но он разбивает мой код и просто не так.

Второе, что я могу сделать, это не устанавливать ограничения. Я все еще могу использовать автозапуск, но если я не задаю ограничений и не устанавливаю ограничения по умолчанию, таблицаView не будет перезагружена. конечно, это тоже не очень умная вещь, потому что у меня много элементов в моем viewController.

Наконец, я понял, что могу показать этот «модальный» viewController в другом UIWindow. Я создаю UIWindow и устанавливаю modalViewController как свой rootViewController.

Я привел пример проекта в git: https://github.com/OrenRosen/ModalInWindow

Надеюсь, это будет полезно.

Я сделал что-то подобное с навигационным контроллером, который не вращается, если верхний толкаемый контроллер не вращается.

В вашем случае проверьте, подает ли главный контроллер другой контроллер. Если это не так, просто отклоните вращение, иначе верните все возвращаемые контроллером данные для метода вращения.

Что касается вашего вида таблицы, он не должен перезагружаться из-за поворота.

В iOS 8 вид, который вращается при изменении ориентации устройства, – это первое представление, добавленное в UIWindow . Итак, если вы сохраните ссылку на нее в своем presentedController shouldAutorotate , вы можете перезаписать значения shouldAutorotate и supportedInterfaceOrientations .

  • Установить UITableView BackgroundColor универсально с помощью UIAppearance
  • 2 UITableViews в одном UIView
  • Переупорядочение вращающейся uitableviewcell
  • Четкий ответ о том, как маскировать UIView как выбранный UITableViewCellBackgroundView
  • Получение дубликатов табличных ячеек после первого раза
  • Получать уведомление, когда UITableView закончил запрашивать данные?
  • AdLovin Banner Ad Crash на iPad
  • iOS - авария UIRefreshControl
  • Возможно ли, что UITableViewController скрывает свои ячейки до тех пор, пока не будет содержимое, и пока покажет сообщение «без содержимого»?
  • IOS: использование пользовательской ячейки в некоторых классах
  • UIActivityIndicatorView в UITableViewCell не прекращает вращение
  • Interesting Posts

    laravel fcm push-уведомление с brozot / Laravel-FCM не работает на ios, но отлично работает с android

    Могу ли я добавить «Создать резервную копию» для «Справочника документов» для iCloud

    Как фильтровать подтипом мультимедиа, используя NSPredicate с PHFetchOptions

    Как в iOS работает (неатомный, сильный) ресурс свойства?

    есть ли способ получить значок значка значка приложения?

    drawViewHierarchyInRect: afterScreenUpdates и renderInContext: не работают … Другое решение?

    Пользовательский вид ячейки таблицы с исключением исключения xib на ios 8

    Добавление изображений в кнопки в построителе интерфейса

    Затухание и выход UIButton

    IB_DESIGNABLE, с просмотром просмотров в предварительном просмотре?

    UIAppearance, см. Результат в Interface Builder?

    Временный отказ от ответственности

    Уведомление о выпуске Urban Airship для iPhone: проблема SSL

    Быстрая задержка в цикле

    Использование переменной для имени элемента в Core Data Predicate

    PhoneC: Разработка iOS проста с помощью XCode, Swift3, UITableView, cocatouch, давайте создадим приложения для iPhone, iPad и Macbook.